IceBerg and push for projects vs packages

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

IceBerg and push for projects vs packages

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

Reply | Threaded
Open this post in threaded view
|

Re: IceBerg and push for projects vs packages

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 <[hidden email]> 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


Reply | Threaded
Open this post in threaded view
|

Re: IceBerg and push for projects vs packages

SergeStinckwich
On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
<[hidden email]> 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/

Reply | Threaded
Open this post in threaded view
|

Re: IceBerg and push for projects vs packages

EstebanLM

> On 29 Aug 2016, at 14:04, Serge Stinckwich <[hidden email]> wrote:
>
> On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
> <[hidden email]> 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/
>


Reply | Threaded
Open this post in threaded view
|

Re: IceBerg and push for projects vs packages

SergeStinckwich
On Mon, Aug 29, 2016 at 2:08 PM, Esteban Lorenzano <[hidden email]> wrote:

>
>> On 29 Aug 2016, at 14:04, Serge Stinckwich <[hidden email]> wrote:
>>
>> On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
>> <[hidden email]> 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/

Reply | Threaded
Open this post in threaded view
|

Re: IceBerg and push for projects vs packages

Esteban A. Maringolo
2016-08-29 9:12 GMT-03:00 Serge Stinckwich <[hidden email]>:

> On Mon, Aug 29, 2016 at 2:08 PM, Esteban Lorenzano <[hidden email]> wrote:
>>
>>> On 29 Aug 2016, at 14:04, Serge Stinckwich <[hidden email]> wrote:
>>>
>>> On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
>>> <[hidden email]> 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

Reply | Threaded
Open this post in threaded view
|

Re: IceBerg and push for projects vs packages

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. 

Reply | Threaded
Open this post in threaded view
|

Re: IceBerg and push for projects vs packages

Dale Henrichs-3
In reply to this post by Esteban A. Maringolo


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

> 2016-08-29 9:12 GMT-03:00 Serge Stinckwich <[hidden email]>:
>> On Mon, Aug 29, 2016 at 2:08 PM, Esteban Lorenzano <[hidden email]> wrote:
>>>> On 29 Aug 2016, at 14:04, Serge Stinckwich <[hidden email]> wrote:
>>>>
>>>> On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
>>>> <[hidden email]> 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