[Nitro] CLI libs in Facets or not?

Trans transfire at gmail.com
Sat Aug 11 09:15:05 EDT 2007

On Aug 11, 12:59 am, "George Moschovitis"
<george.moschovi... at gmail.com> wrote:
> As I have  previously said I preferred having just two projects:
> core/more

Yes, to be sure I've come ''-this close to doing exactly that with
Facets. I seem endlessly torn between one project, two projects and
the 50+ little mini-projects approach. All have merits and downsides.

The mini-project approach, for instance, allows for selective usage of
the many more libraries (eg. if you just want annotations you just
install annotations), but it's a nightmare in version control if you
want to use a bunch of libraries at once, as is Nitro/Og's case, so I
ultimately decided against it. However I did see where some parts of
Facets stood out as beyond what one might expect from a supplement to
Ruby's core and standard libs. It's those libs I moved to their own
projects, namely Stick, English and Blow. Yes, in some respects it
would be nice to have everything under the Helios in one install (gem
install it_all ;), but in reality we have to draw some lines. I think
these three outcrops are a good compromise.

Of course, I have still been tempted to divide what remains between
core/more projects, Such a divide does have some organizational
benefits to us developers, and offers a little more choice to the end-
users. And I've considered a variety of naming schemes for this:
'facets_core', 'facets_more' with a 'facets' meta-package, or just
'core', 'more' and 'facets' as you suggest, or (what I was leaning
toward most recently) just two packages, 'facets' and 'ultrafacets',
since the later depends on the former. These later options has some
nice merits. But ultimately I've never been quite persuaded to return
to the nano/mega jaunt (as cool as those names were ;), and give up on
the single install and version number. Maybe ultimately this split
should happen (Facets 3.0? ;), but for now I think the off-shoot
projects are enough of a compromise.

Having said that though, I just want you to knwo, that I can totally
see why you favor core/more. 'core' and 'more' no doubt fit nicely
with rest of Nitro's names. And if Facets were only Nitro's "Glue",
I'd take that route. But Facets is also it's own project too (which is
actually a benefit to Nitro) and so I'm more inclined to keeping
'facets' in the package names.

Sorry to get a little long winded on this. I just wanted you to
understand my thought processes on the matter.

> but now that you have split facets in multiple, granular projects
> (for example) English, I think it is appropriate for the cli utils to
> have a separate project as well.

Okay, cool. That's what I was thinking too. "Clio" right? :)  My only
hesitation has been in considering: if I were making Ruby's standard
library (the Modus Operandi question of Facets), what would I make
sure to put in it? CLI libs are definitely on that list.


More information about the Nitro-general mailing list