Bug#316214: /usr/bin/bibtex: bibtex reports an error where it should give a warning
Package: tetex-bin
Version: 2.0.2-30
Severity: normal
File: /usr/bin/bibtex
If you have several .bib files with an entry that appears
in more than one of the files,
bibtex prints a warning message, but returns a final
non-zero return code.
This behaviour of bibtex causes annoying interactions
between different documents that share the same references.
The problem causes trouble with using bibtex within
scripts and make, as they then treat duplicate entries as an error[*].
It is certainly not an error if the duplicated entries
are completely identical. In that case, bibtex should
return a code of zero, indicating success. (It should
probably continue to print a warning message.)
IMHO, the proper behaviour for bibtex should be as follows:
(1) Default behaviour: warning message on identical duplicates,
but exit code of zero.
(2) If one .bib file entry is a superset of another also
treat as a warning with a zero exit code.
I.E. if every key in entry 1 exists (and has the same text)
in entry 2, but entry 1 may have some extra keys,
use entry 1 and proceed.
(3) Otherwise, duplicates would give a non-zero exit code.
One could imagine adding command line switches to make it
more severe (i.e. the current behaviour) or lax.
[*] Don't tell me that I'm supposed to clean out all the duplicates,
because I don't necessarily "own" all the .bib files. Often,
one's collaborators don't take kindly to rearranging all their
.bib files for paper A, just so that *I* can use bibtex within
make in paper B.
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.11-1-686
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Versions of packages tetex-bin depends on:
ii debconf 1.4.51 Debian configuration management sy
ii debianutils 2.13.2 Miscellaneous utilities specific t
ii dpkg 1.10.28 Package maintenance system for Deb
ii ed 0.2-20 The classic unix line editor
ii libc6 2.3.2.ds1-22 GNU C Library: Shared libraries an
ii libgcc1 1:4.0.0-9 GCC support library
ii libice6 4.3.0.dfsg.1-14 Inter-Client Exchange library
ii libkpathsea3 2.0.2-30 path search library for teTeX (run
ii libpaper1 1.1.14-3 Library for handling paper charact
ii libpng12-0 1.2.8rel-1 PNG library - runtime
ii libsm6 4.3.0.dfsg.1-14 X Window System Session Management
ii libstdc++5 1:3.3.5-13 The GNU Standard C++ Library v3
ii libt1-5 5.0.2-3 Type 1 font rasterizer library - r
ii libwww0 5.4.0-9 The W3C WWW library
ii libx11-6 4.3.0.dfsg.1-14 X Window System protocol client li
ii libxaw7 4.3.0.dfsg.1-14 X Athena widget set library
ii libxext6 4.3.0.dfsg.1-14 X Window System miscellaneous exte
ii libxmu6 4.3.0.dfsg.1-14 X Window System miscellaneous util
ii libxt6 4.3.0.dfsg.1-14 X Toolkit Intrinsics
ii mime-support 3.34-1 MIME files 'mime.types' & 'mailcap
ii perl 5.8.7-3 Larry Wall's Practical Extraction
ii sed 4.1.2-8 The GNU sed stream editor
ii tetex-base 2.0.2c-8 Basic library files of teTeX
ii ucf 1.18 Update Configuration File: preserv
ii xlibs 4.3.0.dfsg.1-14 X Keyboard Extension (XKB) configu
ii zlib1g 1:1.2.2-4 compression library - runtime
-- debconf information:
tetex-bin/upd_map: true
* tetex-bin/cnf_name:
tetex-bin/fmtutil: true
tetex-bin/fmtutil-failed:
tetex-bin/userperm: false
* tetex-bin/texmf: true
tetex-bin/updmap-failed:
* tetex-bin/hyphen: ngerman[=naustrian-neue_Rechtschreibung], french[=patois]
tetex-bin/oldcfg: true
* tetex-bin/use_debconf: true
* tetex-bin/groupname: users
tetex-bin/groupperm: true
* tetex-bin/lsr-perms: true
Reply to: