httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From gord...@cygnus.com (Gordon Irlam)
Subject Re: Apache legal question
Date Sun, 05 May 1996 21:29:26 GMT
> > with Apache.  Sometimes though, there is a need to differentiate.  To
> > handle this we plan to modify our Apache version string by appending a
> > Cygnus specific identifier (Eg. "Apache/1.0.5-inet-0.9").
> 
> 	I think it would be a good idea to standardize on this and
> follow the Apache-SSL, Apache-SSL-US model.
> 
> I'm using "Apache-SSL-US/1.0.5+1.1.1b1" for my version strings.
> Cygnus could use "Apache-Cygnus/1.0.5+0.9" 

One of our product requirments is that each application support
a -v flag.  We would very much like to have this flag to have a
consistent behavior across all applications we ship.

Different applications use different formats for their version
strings:

    Apache: Apache/1.0.5
    Perl:   5.002_01
    Tcl:    7.5a2
    Expect: 5.19.0

The I*Net package is a collection of such applications that we are
about to release and offer commercial support for.

The approach we have been taking has been to take the base application
version string, and to append to it an I*net identifier and I*Net
version number:

    Apache: Apache/1.0.5-inet-1.0
    Perl:   5.002_01-inet-1.0
    Tcl:    7.5a2-inet-1.0
    Expect: 5.19.0-inet-1.0

One of the advantages of doing things this way is we perceive
it will be immediately clear to customers what the version string
denotes, and the relationship between what they are running and
the current version available to them on the net.  Simply sorting
the strings is sufficient to understand the ordering of different
versions.

      Apache/1.0.3
    < Apache/1.0.3-inet-0.9
    < Apache/1.0.5
    < Apache/1.0.5-inet-1.0
    < Apache/1.0.5-inet-1.1
    < Apache/1.0.5-inet-1.2  (*)
    < Apache/2.0
    < Apache/2.0-inet-1.1    (*)

[ * - This case, in which I*Net 1.2 includes a version of Apache that
is less than the version of Apache included in I*Net 1.1, can occur
when major changes have occured to the sources, and we decide we
need to provide both versions to our customers.  An example of
this is we were considering adding Perl 4 support in a future product
release, even though we will initially ship Perl 5.  (Perl 5 is now
sufficiently robust and widely used that this now seems unlikely).]

If we were to use strings such as:

    Apache-Cygnus/1.0.3+2.0
    Apache-SSL-US/1.0.5+1.1.1b1
    Apache/1.1

I think the ordering and meaning would be a little less clear to
customers.

When a customer phones up for support, one of the first things we
need to find out is whether they are running the latest release.
This is easy if we can simply tell them to do -v and then read
back to us everything after "inet".  It is quite hard to do if
what needs to be done varies from application to application.  In
addition to the product we are building our front line support
people have to handle calls for the compiler tool kit, and network
security products.

A consideration specific to Apache is how the version strings
interact with the results reported in server surveys.  By adding
all our Cygnus specific version information to the end we think it
more likely that such surveys will work the way we would like them
to.  We don't see our release of Apache and the Apache Group's
release of Apache as being separate things in the way that Apache
and NCSA are separate servers, and are in some sense in competition.
What we see is a single Apache, and what we really see ourselves
as providing to our customers is simply commercial customer support
for the Apache web server, not a different product.

While I'm trying to explain all this, I might as well mention why
we would like to use the product family "-inet", rather than our company
name "-cygnus".  This is because some of the tools we ship are also
shipped as part of our compiler tool kit - Tcl/Tk, patch, and
send-pr.  And it is important for us to be able to differentiate
when a customer reports a bug between a version of Tcl/Tk that
was shipped as part of the compiler tool kit and as part of the
I*Net toolkit.  If people think it important, we could include
both the company name and our product family in the version string
"-cygnus-inet-1.0", but then the version strings start looking
rather long.

Thoughts, comments?

                       never had so much,
                       been written about so few characters,
                                                             gordon

Mime
View raw message