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
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 <i.uhnak@gmail.com> 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
On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini <npasserini@gmail.com> 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/
On 29 Aug 2016, at 14:04, Serge Stinckwich <serge.stinckwich@gmail.com> wrote:
On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini <npasserini@gmail.com> 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/
On Mon, Aug 29, 2016 at 2:08 PM, Esteban Lorenzano <estebanlm@gmail.com> wrote:
On 29 Aug 2016, at 14:04, Serge Stinckwich <serge.stinckwich@gmail.com> wrote:
On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini <npasserini@gmail.com> 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/
2016-08-29 9:12 GMT-03:00 Serge Stinckwich <serge.stinckwich@gmail.com>:
On Mon, Aug 29, 2016 at 2:08 PM, Esteban Lorenzano <estebanlm@gmail.com> wrote:
On 29 Aug 2016, at 14:04, Serge Stinckwich <serge.stinckwich@gmail.com> wrote:
On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini <npasserini@gmail.com> 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
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.
On 8/29/16 8:12 AM, Esteban A. Maringolo wrote:
2016-08-29 9:12 GMT-03:00 Serge Stinckwich <serge.stinckwich@gmail.com>:
On Mon, Aug 29, 2016 at 2:08 PM, Esteban Lorenzano <estebanlm@gmail.com> wrote:
On 29 Aug 2016, at 14:04, Serge Stinckwich <serge.stinckwich@gmail.com> wrote:
On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini <npasserini@gmail.com> 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
participants (6)
-
Dale Henrichs -
Esteban A. Maringolo -
Esteban Lorenzano -
Nicolas Passerini -
Peter Uhnak -
Serge Stinckwich