Subject: Re: [ANNOUNCEMENT] Updated: bzip2-1.0.2-1
From: Randall R Schulz <[email-masked]>
To: Charles Wilson <[email-masked]>
Cc: [email-masked]
Date: Wed, 10 Apr 2002 10:30:43 -0700

Charles,

At 10:14 2002-04-10, Charles Wilson wrote:
>Randall R Schulz wrote:
>
>>Say what?
>>This package showed up at Mirrors.rcn.net yesterday,
>
>
>Hmm...I didn't even upload the files until just after midnight EDT 
>Wednesday morning (and announced it simultaneously). That's some pretty 
>fast mirroring...see way below.

I'm on the west coast of North America, and picked this package up after 
11:00 pm PDT. It was just "luck," I guess, that one of my irregular 
impulses to check for Cygwin updates struck at that particular moment.

>>and I downloaded and installed it without incident or complaint using the 
>>previous-generation Setup.exe (2.125.2.10).
>
>
>Right -- previous generation setup didn't support dependencies.  So, you 
>didn't install the 'libbz2_0' package, on which bzip2 now depends (sortof, 
>see below).  It's actually the libbz2_0 package that old setup.exe's will 
>be confused by.  Since you didn't even try to install it (no automatic 
>dependencies), then you didn't have any problems. Until you try to run a 
>program that needs cygbz21.0.dll.

I always install everything presented via Setup.exe's package list. I 
download including source and install only binaries. I suppose with a 
strategy like that, dependencies or lack thereof are not such a big deal.

>(below): However, the actual executables in the bzip2 package were linked 
>STATICALLY for precisely this reason -- so that folks like you wouldn't 
>have problems.  In fact, the "dependency" of the bzip2 package on the 
>libbz2_0 package is fiction; nothing in the bzip2 package needs the dll -- 
>except for the import library.
>
>And any programs that individual users may have compiled PREVIOUSLY that 
>they linked dynamically against the OLD bzip2 package's cygbz21.0.dll.
>
>Trust me: all of these gyrations are necessary, including splitting 
>bzip2-1.0.1-6 into two separate packages (bzip2-1.0.2-1 and 
>libbz2_0-1.0.2-1), so that I can migrate bzip2 to the auto-import build 
>style.  That will greatly simplify things...but this step had to happen first.

I'm not questioning your choices on how to link, package, release and 
whatnot. I've been in similar situations over the years myself.

>Unfortunately, I ran into some problems with the package name, setup.exe, 
>and the fact the "libbz2" -- the official library name of the bzip2 
>package -- ends in a numeral.  On cygwin, I've been naming the "DLL-only" 
>packages with a traling numeral that indicates the DLL major version (this 
>allows peaceful coexistence and backward compatibility: see 
>libreadline4/libreadline5,  libncurses5/libncurses6, etc.)
>
>libbz20-1.0.2-1  ?  looks like twenty, to me
>libbz2-0-1.0.2-1 ? oops, setup will parse the '0' as the source version, 
>and 1.0.2 as the release version, and the -1 gets thrown away.
>
>So, we settled on libbz2_0 -- but old setup.exe's treated '_' and '-' the 
>same.  New setup.exe's do NOT use '_' as a parsing separator. Therefore:
>
>libbz2_0-1.0.2-1 ==> packagename=libbz2_0  version=1.0.2  release=1
>
>which is what I needed.  However, old setup.exe's will be confused...

Just for the record, here's what I have in my ".../latest/bzip2" directory:

% ll -R latest/bzip2
latest/bzip2:
total 1671
-rwxrwxrwx    1 Administ None       477490 May 19  2001 
bzip2-1.0.1-6-src.tar.gz*
-rwxrwxrwx    1 Administ None       339440 May 19  2001 bzip2-1.0.1-6.tar.gz*
-rwxrwxrwx    1 Administ None       679387 Apr  9 23:22 
bzip2-1.0.2-1-src.tar.bz2*
-rwxrwxrwx    1 Administ None       212144 Apr  9 23:20 bzip2-1.0.2-1.tar.bz2*
drwxrwxrwx    2 Administ None            0 Apr  9 23:22 libbz2_0/

latest/bzip2/libbz2_0:
total 25
-rwxrwxrwx    1 Administ None          528 Apr  9 23:22 
libbz2_0-1.0.2-1-src.tar.bz2*
-rwxrwxrwx    1 Administ None        24440 Apr  9 23:22 
libbz2_0-1.0.2-1.tar.bz2*

% bzip2 --version
bzip2, a block-sorting file compressor.  Version 1.0.2, 30-Dec-2001.

    Copyright (C) 1996-2002 by Julian Seward.

    This program is free software; you can redistribute it and/or modify
    it under the terms set out in the LICENSE file, which is included
    in the bzip2-1.0 source distribution.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    LICENSE file for more details.

bzip2: I won't write compressed data to a terminal.
bzip2: For help, type: `bzip2 --help'.

By the way, this looks like a minor bug. Both "-V" and "--version" are 
listed in the help output as a way to get the version information, but when 
using them bzip2 still complains about an invalid invocation (the message 
about writing output to a terminal).

>>By the way, if this sort of dire warning is associated with a new 
>>release, shouldn't the announcement go out before the package itself?
>
>
>way below: It did.  However, the gateway between cygwin-announce@ and 
>cygwin@ has been broken since Sunday.  Chris is working on it.  But, when 
>I noticed that it wasn't working, I resent the announcement directly to 
>cygwin@ by hand; unfortunately I didn't do that manual intervention last 
>night, but this noon.  Sorry.

I had considered sending a message a few days ago about how many updates 
are not accompanied by announcements. I guess now I know why and that 
fixing it is on someone's list.

>--Chuck

Randall Schulz
Mountain View, CA USA

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/