Changes to bidwatcher
06/15/01 - v1.1.6a
* Obviously, I have not been working on bidwatch much
lately. Up until recently, it had worked find for me and
I didn't have much reason to change. Starting last fall,
the source forge version started to become active, so I
figured this version would just fade away. Well, a
critical bug has popped up, and it looks like the
sourceforge version doesn't fix it yet, so here is a
*very* minor update.
* Stephen Bond provided a patch to make bidwatcher work
with the recent changes that eBay made that caused
bidwatcher to reject all new auctions. (This is the
* Brad Knotwell provided a patch to make bidwatcher work
with proxy servers.
05/10/00 - v1.1.6
* The code I put into the timeSync() function in v1.1.2 is
WRONG! I got a sign reversed and instead of taking the
minimum difference, I should be taking the maximum. This
means the code actually made things worse when there were
network lags. *ACK!* To make matters even worse, I
didn't realize that the time offset was stored on disk,
the result being that the offset was being set to the
worst case of network lag that you have ever had.
This bug has been fixed and I also added code to measure
the network packet delays instead of just guessing that
it is a constant "2 seconds".
* In the last few days (around 05/01/00) eBay has become
flaky again. This has "given me the opportunity" to find
and fix more bugs in the network code. (My ISP also
"helped out" by having a flaky link to Alternet.) In
> Bidwatcher now monitors how long it takes to fetch a
web page. If the network delays become "abnormally
high", it will adjust the snipe delays, web page fetch
timeouts, and auction update intervals accordingly.
This makes last second sniping safer, but the 5 second
"minimum safe delay" hasn't change because you still
need to allow for one unexpected network hang. The
first retry may well not happen for up to 4 seconds.
> Network debugging code can be enabled with the
-DDEBUG_NETWORK compiler flag.
> The code that I added in v1.1.0 to make bidwatcher stop
updating auction info if we are getting close to a
snipe was incomplete. It now checks the time remaining
after every web page is fetched, including fetching
your bid list and sync'ing time.
> Bidwatcher will no longer hang for arbitrarily long
periods of time while trying to connect to eBay.
> Bidwatcher will no longer timeout if it is actively
receiving data. Only when there is nothing to read and
the connection has possibly stalled will it look to see
if it should timeout the connection.
* Joel Thomas <email@example.com> found a fixed a strange bug
that causes bidwatcher to just "hang" on some boxes. I
don't understand why, but some machines need to have the
HTTP fetch request terminated with a "\r\n" instead of
just an "\n". This bug has been reported over on the
sourceforge version also, but I was never able to
recreate it. Thanks Joel!
* The snipe log now contains information about the critical
times involved. That is, the time it started to snipe,
the time it finished, and the time the auction ended.
* The "Delete ALL Auctions" option now gives a warning before
it deletes them. As a side effect, when you change user
names, bidwatcher now asks you if you want to delete the
current list of auctions.
* Double clicking an auction has been changed to launching
a browser window for the auction (which I do a lot)
instead of updating that auction's information (which I
* When bidwatcher updates the auction list, it will no
longer change the currently selected auction.
* The interlocking to prevent multiple updates from
happening at the same time wasn't always working because
"updateInProgress" wasn't declared "volatile".
* The "Add Auction" option now ignores leading and trailing
* Sometime around 03/15/00, Ebay changed the wording of
"someone outbid you" web page, causing Bidwatcher to
report this as an "unknown reason" for the bid to fail.
* Bidwatcher has always created the "~/.bidwatcher"
directory with permissions so that only the user can read
the files in the directory. This is all you really need
to insure privacy, however, in order to be super
paranoid, it now also creates all files as only user
* If you never entered a password, bidwatcher would pick up
garbage for the password instead.