$Id: HISTORY,v 4.1 2019/03/20 17:24:23 schwarze Exp $
CVSweb HISTORY
==============
This file documents the development and release history
of the CVSweb CGI program.
Repository overview
-------------------
Many CVS repositories existed during the development of CVSweb.
Given that historical naming varied and followed no consistent
scheme, the present file employs the following shorthands for the
known historical repositories:
1. FENNER (???? - 1996)
2. WWW (1996 - 2000)
3. ZELLER (???? - 2001)
4. KNU/SCOP (2000 - 2007)
5. SCHWARZE (2019 - ????)
The present HISTORY file first appeared in the SCHWARZE repository
on March 20, 2019.
Revision number overview
------------------------
For the file cvsweb.cgi in the SCHWARZE repository, here is an
overview of revision numbers. See the text below for details.
* 1.1 to 1.45:
main line of development in the WWW repository
* 1.1.1.1 to 1.1.1.37:
vendor import branch of KNU/SCOP into the WWW repository
* 1.45.2.46 to 1.45.2.91:
merges from KNU/SCOP into the WWW repository
* 1.45.2.92 and 1.45.2.93:
minor development continuing in WWW after the end of KNU/SCOP
* 2.1 and following:
reserved for the ZELLER repository; no revisions yet
* 3.1 to 3.119:
main line of development in the KNU/SCOP repository
up to the FreeBSD-CVSweb 2.0.5 release
* 3.119.2.1 to 3.119.2.9:
stable branch in the KNU/SCOP repository
up to the FreeBSD-CVSweb 2.0.6 release
* 3.120 to 3.297:
main line of development in the KNU/SCOP repository
up to the FreeBSD-CVSweb 3.0.6 release
* 3.298 and 3.299:
merge of post-KNU/SCOP development from WWW into SCHWARZE
* 4.1 and following:
main line of development in the SCHWARZE repository
starting on March 20, 2019
Symbolic revision names
-----------------------
The SCHWARZE repository contains the following symbolic revision
names (tags). They mostly follow the format used in the WWW and
KNU/SCOP repositories, but have been unified in some minor ways.
* FreeBSD-cvsweb-2_0_<x>:
official CVSweb version 2 and -stable (2.0.6) releases from KNU/SCOP
* FreeBSD-cvsweb-2_9_<x>-beta:
the three CVSweb version 3 beta releases from KNU/SCOP
* FreeBSD-cvsweb-3_0_<x>:
official CVSweb version 3 releases from KNU/SCOP
* CVSWEB_v1_<x>_1_<y>:
vendor import branch of KNU/SCOP into the WWW repository
<x> is the revision number in the ZELLER repository,
corresponding to 2.<x> revisions in SCHWARZE which do not yet exist
<y> is the revision number in the KNU/SCOP repository
corresponding to 3.<y> revisions in the SCHWARZE repository
* CVSWEB_v2_0_<x>:
vendor import branch of KNU/SCOP into the WWW repository
for the CVSweb version 2 and -stable (2.0.6) releases
* CVSWEB_v3_0_6:
vendor import branch of KNU/SCOP into the WWW repository
for the 3.0.6 release; earlier CVSweb version 3 releases
were never imported into the WWW repository
HISTORY DETAILS
===============
First phase (FENNER): Bill Fenner's CVSweb (??? - 1996)
-------------------------------------------------------
The CVSweb program was originally developed
by Bill Fenner <fenner@FreeBSD.org>.
So far, it is unknown whether he used a version control system
before September 28, 1996, and no version could so far be found
older than that date.
Second phase (WWW): FreeBSD-www repository (1996 - 2000)
--------------------------------------------------------
On September 28, 1996, John Fieber <jfieber@FreeBSD.org> imported
CVSweb into the larger FreeBSD-www CVS repository. Development
continued in this WWW repository with contributions from various
authors until July 18, 2000.
The complete version history of this phase is preserved.
The revision numbers agree between the WWW and SCHWARE repositories
going from cvsweb.cgi rev. 1.1 to rev. 1.45.
Ingo Schwarze obtained copies of this part of the history
with the help of Wolfram Schneider <wosch@FreeBSD.org>
and Hiroki SATO <hrs@FreeBSD.org> in March 2019.
The WWW repository eventually also contained copies of the files
cvsweb.conf, cvsweb.conf-freebsd, cvsweb.conf-netbsd, cvsweb.conf-openbsd,
and cvsweb.css, but all these files only appeared here as imported
versions of the files from the KNU/SCOP repository. For that reason,
the version history of these files in the WWW repository has no
independent significance and is not included in the SCHWARZE
repository. Consequently, the only file in the SCHWARZE repository
having revisions lower than 3.1 is cvsweb.cgi.
Third phase (ZELLER): Henner Zeller's CVSweb (??? - 2001)
---------------------------------------------------------
At an unknown point in time, Henner Zeller forked the code of either
the FENNER repository or more likely the WWW repository and set up
his own, private CVS repository. In addition to Henner Zeller
himself, Henrik Nordström contributed significantly to the
development in this repository.
No definite commit date is known before July 27, 2000, but the
repository was almost certainly begun much earlier because it already
contained 93 revisions of cvsweb.cgi at that point in time. The
last definitely known commit date to the ZELLER repository is July
24, 2001. So far, no copy of the repository itself could be found;
all information given here is derived from commit messages in the
KNU/SCOP repository.
In the SCHWARZE repository, revision numbers of the form 2.* are
reserved for the ZELLER repository, in case a copy of that repository
should ever be found.
Fourth phase (KNU/SCOP): FreeBSD-cvsweb repository (2000 - 2007)
----------------------------------------------------------------
On July 19, 2000, Akinori MUSHA <knu@FreeBSD.org> forked the code
of the ZELLER repository and set up his own, private CVS repository.
By way of repository copy, his complete repository was later copied
into the larger FreeBSD-projects repository, using the directory
/projects/cvsweb/.
In an email sent to Ingo Schwarze on March 20, 2019, Akinori MUSHA
confirmed that he found his local CVS repository on his main server
and that it looks like the copy of the KNU/SCOP repository that
Ingo Schwarze obtained from the /projects/cvsweb/ directory on the
FreeBSD CVS server with the help of Wolfram Schneider and Hiroki
SATO does indeed contain the complete revision history of his
original repository.
Development in this KNU/SCOP repository was at first predominatly
moved forward by Akinori MUSHA, merging improvements from the ZELLER
repository on many occasions and also making many improvements of
his own, until he finally released FreeBSD-cvsweb 2.0.0 from this
repository on November 7, 2001. He continued development until he
released FreeBSD-cvsweb 2.0.3 on May 22, 2002. After that, Ville
Skyttä joined him, and they continued development together until
the release of FreeBSD-CVSweb 2.0.5 on July 22, 2002. The original
revision numbers leading up to the 2.0.5 release in the KNU/SCOP
repository were 1.1 to 1.119. In the SCHWARZE repository, they
were changed to 3.1 to 3.119 to avoid clashes with the WWW repository.
Because FreeBSD kept using CVSweb on the official website at the
time, the code from the KNU/SCOP repository was occasionally merged
back to the WWW repository, first on August 14, 2000 and last on
March 17, 2007. The revision numbers of this vendor import branch
agree between the WWW and SCHWARZE repositories, going from 1.1.1.1
to 1.1.1.37. In the WWW repository, this vendor branch was repeatedly
merged into the trunk, with revision numbers from 1.46 to 1.91,
followed by two additional improvements in revisions 1.92 and 1.93.
In the SCHWARZE repository, the revision numbers of these merges
were changed to 1.45.2.46 to 1.45.2.93 because they are not part
of the main line of development which continues with revision 3.1
(i.e. the KNU/SCOP repository) after WWW revision 1.45. Because
WWW revisons 1.92 and 1.93 (= SCHWARZE revisions 1.45.2.92 and
1.45.2.93) remain relevant but were never merged back to the KNU/SCOP
repository, both were merged to the KNU/SCOP trunk in the SCHWARZE
repository as revisions 3.298 and 3.299.
After 2.0.5, development continued on two branches. The stable
branch in the KNU/SCOP repository led to the release of
FreeBSD-cvsweb-2_0_6 on September 26, 2002. Three more improvements
followed until development ceased on this branch on February 17,
2004. The original revision numbers of the stable branch in the
KNU/SCOP repository were 1.119.2.1 to 1.119.2.9. In the SCHWARZE
repository, they were changed to 3.119.2.1 to 3.119.2.9 to avoid
confusion with the WWW repository.
The other post-2.0.5 branch in the KNU/SCOP repository was the trunk
and led to the release of FreeBSD-cvsweb-2_9_1-beta on October 5,
2003, FreeBSD-cvsweb-3_0_0 on February 26, 2004, and the final
FreeBSD-cvsweb-3_0_6 on September 25, 2005, followed by two more
bugfixes before development ceased in the KNU/SCOP repository on
December 3, 2005. The original revision numbers of the trunk in the
KNU/SCOP repository were 1.120 to 1.297. In the SCHWARZE repository,
they were changed to 3.120 to 3.297 to avoid confusion with the WWW
repository.
Fifth phase (SCHWARZE): CVSweb on bsd.lv (2019 - ????)
------------------------------------------------------
On March 20, 2019, Ingo Schwarze <schwarze@openbsd.org> set up a
CVSweb CVS repository on the bsd.lv server, preserving as much of
the history as could be found. Going forward with development,
revision numbers starting with 4.1 will be used for all files.