Subject: Re: What is a snapshot?
To: None <current-users@NetBSD.ORG>
From: Erik E. Fair <fair@clock.org>
List: current-users
Date: 08/11/1997 11:00:52
At 7:15 -0700 8/11/97, Hubert Feyrer wrote:

>The problem might be the compilng speed of some of the architectures
>currently in use. The building system should have to be automated
>far enough that snapshots can be done using crosscompiling, otherwise
>i don't seee a real chance for this.

I have one such "slow" architecture here: a Sun 3/60 (20 MHz mc68020). It
takes three days to build from zero, so I don't - I leave the objects
around, and do 'make build' with "UPDATE=1". This way, doing a snapshot
takes just under 24 hours, if there haven't been too many changes to the
sources. However, even if there have been extensive changes, my cron-run
build script locks against itself so that only one instance can be running
at a time. The dated snapshots it creates are dated as of the day of the
"sup" (and I start just after the morning supscan on sup.netbsd.org -
around 05:30 P[SD]T). I don't fret much about missing a day or two - it'll
catch up when it can.

The "most recent" snapshot for many ports is months old, and it's difficult
for someone who is not tracking current to get up-to-date. If a
snapshot-a-day is too often, how 'bout setting a standard that says each
port has a current snapshot available as of the first of each month?

What's really bothering me is the infrequent official releases. It's a
little disquieting to see someone report a problem in 1.2.1 and hear back
"oh, that's fixed in -current" (with the implication that they run
-current, or the last snapshot). It's good that we do QA, and release only
when we're convinced that our stuff works. However, for our work to have
more influence on the world at large (and don't we like it when people use
what we've worked hard on?) I think we have to push something official out
the door a little more often than we have been. Say, official release every
year, and bug-fix-only point releases every quarter?

The idea behind doing builds frequently is partly to test things as
immediately as possible after source commit (my own efforts in this area, I
am told, are appreciated), and to get in the habit of doing this often
enough so that it's easier to say, "OK, that snapshot from a week ago seems
to be stable, let's call it the new ``blessed'' snapshot."

Of course, we can only declare a snapshot stable or something if it's
tested, and we can only get it tested if we make it available, so I'm
trying to suggest that (assuming we can get volunteers with appropriate
systems) we crank the testing process up just a touch more by making
snapshots more available. That testing be a daily thing, or a weekly thing
(or monthly thing), instead of an annual or semi-annual thing.

Please note, I am not trying to put more work on the portmasters. I'd
vastly prefer that someone *else* do builds & testing for each port, for
lots of reasons (don't overwork or overcommit the portmaster, independent
verification, etc).

	more comments?

	Erik <fair@clock.org>