[squeak-dev] [Pharo-dev] Fwd: Where are the Metacello ConfigurationOfYourProject supposed to be?

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Fri Mar 10 11:27:08 UTC 2017


2017-03-10 8:51 GMT+01:00 Sven Van Caekenberghe <sven at stfx.eu>:

>
> > On 10 Mar 2017, at 00:21, Nicolas Cellier <nicolas.cellier.aka.nice@
> gmail.com> wrote:
> >
> > Grrr, even the mailing list changes, the first match in gmail just
> bounces, ;)
> >
> > ---------- Forwarded message ----------
> > From: Nicolas Cellier <nicolas.cellier.aka.nice at gmail.com>
> > Date: 2017-03-10 0:05 GMT+01:00
> > Subject: Where are the Metacello ConfigurationOfYourProject supposed to
> be?
> > To: Pharo Development <Pharo-project at lists.gforge.inria.fr>, The
> general-purpose Squeak developers list <squeak-dev at lists.
> squeakfoundation.org>
> >
> >
> > Hi,
> > I must come back to one of the balkanization and lack of stability that
> most upset me.
> >
> > Imagine that you are developping a cross dialect library, say for
> Squeak/Pharo and why not Gemstone.
> >
> > Imagine that this library has a few dependencies to some other
> libraries, either Core like Alien/FFI or more exotic third party also
> available in other dialects.
> >
> > The question are:
> > -1) where are you supposed to maintain your own ConfigurationOf*?
>
> Just next to your original source code. It is your config and you maintain
> it.
>
>
Yes, I generally maintain the ConfigurationOf* in my own repo along with
the other packages,
and I copy the ConfigurationOf* to some centralized place (
http://www.squeaksource.com/MetacelloRepository)
It's like registering the application i nSqueakMap/CPAN/PyPI/etc...



> > -2) where are you supposed to find the ConfigurationOf* dependencies?
>
> Anywhere ;-)
>
>
The config refers to its home repo. That is the one you should use in your
> dependency.
>

OK, that's not particularly robust if source code repository is moving
(i.e. on squeaksource, then ss3, then smalltalkhub, then github via
filetree, then ...)

A centralized Configuration provides a level of resilience.


>
> The different repos Pharo uses are for classification purposes.
>
> That is how I understand it anyway.
>
>
No. The Pharos repos exist because we NEED something like a catalog
(SqueakMap/CPAN/PyPI/whatever).
Otherwise, ConfigurationOf* scattered around the web are not discoverable.

The fact that there are as many repos as pharo versions is because there is
no such easy thing as filtering the ConfigurationOf* matching target
version without loading them all...

Thanks Sven for answering.
BTW, why do you continue to put copies in http://www.squeaksource.com/
MetacelloRepository

Nicolas

> Once upon a time, the answer would have been
> > http://www.squeaksource.com/MetacelloRepository
> >
> > But now, what is it? I see surprisingly few updates here (apart from
> Sven and a few others).
> >
> > How can the Metacello feature of supporting cross-dialect work if the
> dialect specific configuration of dependencies are scattered all around the
> web?
> >
> > Do the CPAN or PyPI have to change their URL each time a new release of
> perl or python is released?
> >
> > Careless decisions in this area can easily sabotage the cross-dialect
> initiative.
> >
> > Maybe I'm ranting by ignorance.
> > I wish your answers will reassure me.
> >
> > Nicolas
> >
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20170310/a0e353e7/attachment.html>


More information about the Squeak-dev mailing list