Re: includes inside squid.conf

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Tue, 2 Apr 2002 16:03:26 +0200

On Tuesday 02 April 2002 15:24, Andres Kroonmaa wrote:

> Guys, plz don't sweep from one extreme to another. Basic includes
> is very simple way to organise common options for many squids. Its
> so rudimentary that even thinking of some external tools makes me
> puzzled.

Why? (on first and last sentence, no point arguing about the middle
one)

> Sure, we can go further and say that it would be simpler to NOT
> have any config parser at all and precompile all options we'd need,
> and have some good pre-processor that recompiles squid based on
> templates. And best-known preprocessor is human, of course.

A bit extreme I would say.. but why not ;-) Naa. Recompiling is a bit
of too time consuming task, and cannot easily be done "on the fly"
for non-intrusive reconfiguration.

> Its all about balance between convenience and needless complexity
> in the end.

It is, and I am now arguing that we do not need to increase the
complexity of Squid with include support in the parser in order to
provide this to the users.

> Of course there are good tools like m4, but why on earth would
> one user want to get familiar with it? What about portability?

m4 is considerably more portable than Squid. I don't see the problem
really..

> We junked optional includes, ok. We junked strict config reuse
> detection, ok, now we are on the verge of junking whole idea of
> includes as well? Common, being userfriendly can't be that bad.

There is no reason why we can't, and at the same time being user
friendly.

> OK, how about limiting recursion depth to 1? No issues with loops,
> included parts can be generated or synced the way whoever likes,
> but people who dislike fancy preprocessors still can make quick
> use of includes to organize their configs.

And why not utilize an external pre-processor to do the job?

The language of the common external pre-processors is any harder to
learn for the purpose of include files than any include statement we
can dream up. In both cases the user has to learn a new directive.

And as a bonus we get the ability to all these advanced options
provided by the pre-processor.

All optional of course.

Note that I am not proposing m4 as THE pre-processor for Squid. Only
arguing that includes etc should be done by pre-processing of the
config file.

Regards
Henrik
Received on Tue Apr 02 2002 - 07:07:43 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:14:56 MST