Bug#631110: cvs: package description adjustment may help user
June 21st, 2011 - 11:00 am ET by Osamu Aoki | Report spam
Hi,
I was surprised to see mksh in "recommends". No wonder Steve felt as he did
after long day. It is late night here too.
I understand this is required by cvs-switchroot written by the package
maintainer and he certainly uses and loves mksh specific commands such
as array variables and "print" command which absolutely require mksh and
can not be dash. (Command itself seems quite useful for some spacial
purposes.)
So, what should we do to avoid such surprise and negative reaction?
Good communication is essential here.
Let's see the fact.
$ dpkg -L cvs | xargs -n1 file |grep executable
/usr/share/cvs/contrib/cvs2vendor: POSIX shell script text executable
/usr/share/cvs/contrib/rcs2log: POSIX shell script text executable
/usr/share/cvs/contrib/descend.sh: POSIX shell script text executable
/usr/share/cvs/contrib/log_accum: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/clmerge: a /usr/bin/perl script text executable
/usr/share/cvs/contrib/log: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/newcvsroot: POSIX shell script text executable
/usr/share/cvs/contrib/commit_prep: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/mfpipe: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/rcs2sccs.sh: POSIX shell script text executable
/usr/share/cvs/contrib/cvs_acls: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/validate_repo: a /usr/bin/perl -w script text executable
/usr/share/cvs/contrib/pvcs2rcs: a /usr/bin/perl script text executable
/usr/share/cvs/contrib/rcs-to-cvs: POSIX shell script text executable
/usr/share/cvs/contrib/sandbox_status: POSIX shell script text executable
/usr/share/cvs/contrib/sccs2rcs: C shell script text executable
/usr/share/cvs/contrib/debug_check_log: POSIX shell script text executable
/usr/share/cvs/contrib/rcslock: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/cln_hist: a /usr/bin/perl script text executable
/usr/bin/cvsbug: POSIX shell script text executable
/usr/bin/cvs: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, stripped
/usr/bin/cvs-switchroot: a /bin/mksh script text executable
Since all /usr/share/cvs/contrib/* are not in command path, these may be
considered non-essential commands. It is true that in order for 1/3 of
real command of cvs package to function, mksh is required and qualify as
recommend.
But cvs-switchroot is not mentioned in cvs manpage while cvsbug is
mentioned. So this cvs-switchroot is very obscure command much like
ones in /usr/share/cvs/contrib/ written in Perl. Actually, commands in
/usr/share/cvs/contrib/ are mentioned in cvs.txt.gz cvs.html FAQ.gz
while cvs-switchroot is not mentioned elsewhere except
changelog.Debian.gz. (Actually its description is confusing since
cvs-switchroot comes from "debian/cvs-switchroot" and not from
"src/scripts/mnt-cvsroot" as I see it packaged.)
At least, cvs package is quite useful and functional without
cvs-switchroot which almost no one can know of as the way it is
included. The use of cvs-switchroot is rare. Thus, installing cvs
package without functioning mksh is perfectly reasonable set up. Just
lack of corner case functionality. Debian policy 7.2 points me to chose
suggest.
| Suggests
| This is used to declare that one package may be more useful with one or more
| others. Using this field tells the packaging system and the user that the
| listed packages are related to this one and can perhaps enhance its usefulness,
| but that installing this one without them is perfectly reasonable.
So there are 2 options I can think of for this package:
Option 1:
* install cvs-switchroot in usr/share/cvs/contrib/
* drop "recommends" of mksh
* update FAQ and cvs.txt.gz and cvs.html to point people to this command in
usr/share/cvs/contrib/ with mksh requirement.
* Change package description
Description: Concurrent Versions System
CVS is a version control system, which allows you to keep old versions of files
(usually source code), keep a log of who, when, and why changes occurred, etc.,
like RCS or SCCS. It handles multiple developers, multiple directories,
triggers to enable/log/control various operations, and can work over a wide
area network. The following tasks are not included; they can be done in
conjunction with CVS but will tend to require some script-writing and software
other than CVS: bug-tracking, build management (that is, make and make-like
tools), and automated testing.
.
This is based on GNU CVS but does not support pserver operation while
incorporating many patches from MirOS Project and Ubuntu.
Option 2:
* keep cvs-switchroot in current location
* change "recommends" of mksh to "suggests" of mksh
(You may disagree to keep it as "recommends". This is weak point.)
* add cvs-switchroot listed at the bottom of SEE ALSO in cvs manpage
* update FAQ and cvs.txt.gz and cvs.html to point people to this command who
need this with mksh requirement.
* Change package description
Description: Concurrent Versions System
CVS is a version control system, which allows you to keep old versions of files
(usually source code), keep a log of who, when, and why changes occurred, etc.,
like RCS or SCCS. It handles multiple developers, multiple directories,
triggers to enable/log/control various operations, and can work over a wide
area network. The following tasks are not included; they can be done in
conjunction with CVS but will tend to require some script-writing and software
other than CVS: bug-tracking, build management (that is, make and make-like
tools), and automated testing.
.
This is based on GNU CVS but does not support pserver operation while
incorporating many patches from MirOS Project and Ubuntu.
.
cvs-switchroot command to change repository or tag in a cvs working copy
requires mksh package.
Since my English is not so good, please ask
debian-l10n-english@lists.debian.org for final proofing of the "Description".
This makes people to be more comfortable seeing mksh for this package:-)
Regards,
Osamu
FYI:
Debian web infrastructure still rely on CVS since we can just checkout
one file over slow connection :-) So CVS still have advantage over
others in some area.
To UNSUBSCRIBE, email to debian-bugs-dist-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
I was surprised to see mksh in "recommends". No wonder Steve felt as he did
after long day. It is late night here too.
I understand this is required by cvs-switchroot written by the package
maintainer and he certainly uses and loves mksh specific commands such
as array variables and "print" command which absolutely require mksh and
can not be dash. (Command itself seems quite useful for some spacial
purposes.)
So, what should we do to avoid such surprise and negative reaction?
Good communication is essential here.
Let's see the fact.
$ dpkg -L cvs | xargs -n1 file |grep executable
/usr/share/cvs/contrib/cvs2vendor: POSIX shell script text executable
/usr/share/cvs/contrib/rcs2log: POSIX shell script text executable
/usr/share/cvs/contrib/descend.sh: POSIX shell script text executable
/usr/share/cvs/contrib/log_accum: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/clmerge: a /usr/bin/perl script text executable
/usr/share/cvs/contrib/log: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/newcvsroot: POSIX shell script text executable
/usr/share/cvs/contrib/commit_prep: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/mfpipe: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/rcs2sccs.sh: POSIX shell script text executable
/usr/share/cvs/contrib/cvs_acls: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/validate_repo: a /usr/bin/perl -w script text executable
/usr/share/cvs/contrib/pvcs2rcs: a /usr/bin/perl script text executable
/usr/share/cvs/contrib/rcs-to-cvs: POSIX shell script text executable
/usr/share/cvs/contrib/sandbox_status: POSIX shell script text executable
/usr/share/cvs/contrib/sccs2rcs: C shell script text executable
/usr/share/cvs/contrib/debug_check_log: POSIX shell script text executable
/usr/share/cvs/contrib/rcslock: a /usr/bin/perl -T script text executable
/usr/share/cvs/contrib/cln_hist: a /usr/bin/perl script text executable
/usr/bin/cvsbug: POSIX shell script text executable
/usr/bin/cvs: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, stripped
/usr/bin/cvs-switchroot: a /bin/mksh script text executable
Since all /usr/share/cvs/contrib/* are not in command path, these may be
considered non-essential commands. It is true that in order for 1/3 of
real command of cvs package to function, mksh is required and qualify as
recommend.
But cvs-switchroot is not mentioned in cvs manpage while cvsbug is
mentioned. So this cvs-switchroot is very obscure command much like
ones in /usr/share/cvs/contrib/ written in Perl. Actually, commands in
/usr/share/cvs/contrib/ are mentioned in cvs.txt.gz cvs.html FAQ.gz
while cvs-switchroot is not mentioned elsewhere except
changelog.Debian.gz. (Actually its description is confusing since
cvs-switchroot comes from "debian/cvs-switchroot" and not from
"src/scripts/mnt-cvsroot" as I see it packaged.)
At least, cvs package is quite useful and functional without
cvs-switchroot which almost no one can know of as the way it is
included. The use of cvs-switchroot is rare. Thus, installing cvs
package without functioning mksh is perfectly reasonable set up. Just
lack of corner case functionality. Debian policy 7.2 points me to chose
suggest.
| Suggests
| This is used to declare that one package may be more useful with one or more
| others. Using this field tells the packaging system and the user that the
| listed packages are related to this one and can perhaps enhance its usefulness,
| but that installing this one without them is perfectly reasonable.
So there are 2 options I can think of for this package:
Option 1:
* install cvs-switchroot in usr/share/cvs/contrib/
* drop "recommends" of mksh
* update FAQ and cvs.txt.gz and cvs.html to point people to this command in
usr/share/cvs/contrib/ with mksh requirement.
* Change package description
Description: Concurrent Versions System
CVS is a version control system, which allows you to keep old versions of files
(usually source code), keep a log of who, when, and why changes occurred, etc.,
like RCS or SCCS. It handles multiple developers, multiple directories,
triggers to enable/log/control various operations, and can work over a wide
area network. The following tasks are not included; they can be done in
conjunction with CVS but will tend to require some script-writing and software
other than CVS: bug-tracking, build management (that is, make and make-like
tools), and automated testing.
.
This is based on GNU CVS but does not support pserver operation while
incorporating many patches from MirOS Project and Ubuntu.
Option 2:
* keep cvs-switchroot in current location
* change "recommends" of mksh to "suggests" of mksh
(You may disagree to keep it as "recommends". This is weak point.)
* add cvs-switchroot listed at the bottom of SEE ALSO in cvs manpage
* update FAQ and cvs.txt.gz and cvs.html to point people to this command who
need this with mksh requirement.
* Change package description
Description: Concurrent Versions System
CVS is a version control system, which allows you to keep old versions of files
(usually source code), keep a log of who, when, and why changes occurred, etc.,
like RCS or SCCS. It handles multiple developers, multiple directories,
triggers to enable/log/control various operations, and can work over a wide
area network. The following tasks are not included; they can be done in
conjunction with CVS but will tend to require some script-writing and software
other than CVS: bug-tracking, build management (that is, make and make-like
tools), and automated testing.
.
This is based on GNU CVS but does not support pserver operation while
incorporating many patches from MirOS Project and Ubuntu.
.
cvs-switchroot command to change repository or tag in a cvs working copy
requires mksh package.
Since my English is not so good, please ask
debian-l10n-english@lists.debian.org for final proofing of the "Description".
This makes people to be more comfortable seeing mksh for this package:-)
Regards,
Osamu
FYI:
Debian web infrastructure still rely on CVS since we can just checkout
one file over slow connection :-) So CVS still have advantage over
others in some area.
To UNSUBSCRIBE, email to debian-bugs-dist-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Similar topics
- Bug#705550: PTS: provide more accessible package description
- Bug#695213: Typos in package description
- Bug#678745: wims: package description review
- Bug#698408: Weak package description
- Bug#697656: Please rewrite package description boilerplate
- Bug#679230: karbon: package description review
- Bug#679697: ucimf: package description review
- Bug#695036: Typos in package description
- Bug#682802: Package description issues
- Bug#680356: tea: package description review
Make your own search :
Tags
Create a new topic
Follow the discussion
5 replies
Make a reply
May 25th, 2013 - 4:01 PM ET
Join now


Replies