%% /u/sy/beebe/tex/bibsort/bibsort-0.15/CHANGELOG, Mon Jan 17 06:27:44 2000
%% Edit by Nelson H. F. Beebe <beebe@math.utah.edu>
%% /u/sy/beebe/tex/bibsort/bibsort-0.14/CHANGELOG, Sat Oct  9 09:00:29 1999
%% Edit by Nelson H. F. Beebe <beebe@math.utah.edu>
%% /u/sy/beebe/tex/bibsort/CHANGELOG, Mon Nov 24 14:25:15 1997
%% Edit by Nelson H. F. Beebe <beebe@plot79.math.utah.edu>
%% /u/sy/beebe/tex/bibsort/CHANGELOG, Fri Nov  8 18:06:37 1996
%% Edit by Nelson H. F. Beebe <beebe@plot79.math.utah.edu>
%% /u/sy/beebe/tex/bibsort/CHANGELOG, Mon Sep 16 19:03:18 1996
%% Edit by Nelson H. F. Beebe <beebe@plot79.math.utah.edu>
%% /u/sy/beebe/tex/bibsort/CHANGELOG, Sat Oct 29 09:05:24 1994
%% Edit by Nelson H. F. Beebe <beebe@sunrise>

[17-Jan-2000]	0.15
		Add support for the -reverse option.  In previous
		versions, -r could be passed to sort, but only
		usefully if there were no comment header, no
		@Preamble{}, and no @String{} parts.  With the new
		option, reverse sorting is restricted to bibliography
		entries only, and then only to numeric data and
		citation labels.

		Add support for -bylabel option.  This has always been
		the default sorting order, but it was inconsistent not
		to have a name for it.

		This version of bibsort has been placed under the GNU
		General Public License (GPL), which is contained in
		the standardly-named file COPYING.

		Put the bibsort.sh file under configure control,
		renaming it to the template file bibsort.sin.

		In bibsort.sin, change output of -?, -author,
		-copyright, -help, and -version options from stdout to
		stderr, to bring them into conformance with other
		programs.  Also, make them produce only one message
		per unique option.

		In bibsort.sin, reduce option names to lowercase, and
		tighten pattern matching on option names to include
		only allowed abbreviations, rather than just doing
		wildcarding.  Move setting of SORTFLAGS out of main
		option matching loop, since a -reverse option affects
		them, but must not be required to be given only after
		the -byxxx options.

		In bibsort.sin, change the output of -copyright to
		reflect the change from public domain to the GPL.

		In bibsort.sin, change a few calls to substr() to
		an already-computed variable with the same value.

		In bibsort.sin, change the variable name
		Volume_Key_Separator to Sort_Field_Separator, to better
		reflect its purpose.  A few function names have been
		renamed for similar reasons.  Remove the surrounding
		Sort_Field_Separator value from the expressions returned
		by the various xxx_key() functions, so that the
		positioning of that separator is made clearer in the
		assignments to complete_sort_key.

		In bibsort.sin, add secondary keys to SORTFLAGS and
		complete_sort_key, to further differentiate between
		otherwise equal entries; in such cases, later
		publications should follow earlier ones.  In previous
		bibsort versions, such `equal' entries could be
		ordered arbitrarily.

		In bibsort.sin, in the final command pipeline, change
		sort to $SORT, and set the SORT variable immediately
		before the pipeline.  This change deals with a problem
		that showed up during development: GNU sort 2.0 is
		broken, and unfortunately, is the standard sort
		utility in Redhat 6.1, and likely other recent
		GNU/Linux distributions.

		In bibsort.man, in the descriptions of the -byxxx
		options, add precise statements about the form of the
		sort key.  Document that letter case in option names is
		no longer significant. Document the new -reverse option.
		Add a COPYRIGHT section.  Give more detailed URLs in the
		AVAILABILITY section.

		Add an extensive validation suite, run by "make
		check".  In particular, this will quickly identify
		systems with broken sort commands.

		In the README file, add a prominent warning about the
		broken sort, and document how to replace such a
		program with a correctly-working one.  Add some
		additional section headers.  Add an installation
		section showing how to run configure and make, and
		what their output looks like.  Add the Internet
		Archive Locations and Distribution Contents sections.

		In Makefile.in and bibsort.sin, convert comments to
		Lisp-style prefixes (### for outer comments, ## for
		block comments, and # for inline comments).

		In Makefile.in, add DATE, PROGNAME, and VERSION
		variable, where DATE and VERSION are set from values
		in configure.in.  Previously, VERSION was extracted
		from the comment header in bibsort.sh.  Make top-level
		installation variables lowercase, to match GNU
		conventions.  Add jar archive format.  Add CHECK*
		variables and implement an extensive check target.
		Rearrange some of the rm commands in the clean,
		distclean, and maintainer clean targets, so "make all"
		in a freshly-unpacked, or distclean'ed, distribution
		does not have to do anything.   Add new targets:
		configure, dist, and docs.  Update the install-exe
		target to handle substitution of the SORT variable.

		In configure.in, change most AC_PATH_PROGS to
		AC_CHECK_PROG, so in the Makefile, only a few
		variables are set with absolute paths.  Add
		bibsort.sh:bibsort.sin to the final AC_OUTPUT() call.
		Add a pair of final chmod calls to remove write access
		from the generated files.

		Add mkdir.sh script to handle mkdir's -p option, which
		is not universally available.


[08-Oct-1999]	0.14
		Add support for -? and -help options.

		Add -bypages option.

		In bibsort.man:

			Document the new options added at versions
			0.13 and 0.14, and note that their use (except
			-bypages) prevents file processing.

			Document the behavior when multiple -byxxx
			options are specified: the last one overrides
			all earlier ones.

			Document a significant change in the sort
			order in the presence of non-numeric values
			previously, except for the day value, values
			beginning with a nondigit would sort as zero.
			Now they sort as infinity (i.e., largest
			signed 32-bit integer).

			Update the PROGRAMMING NOTES section to
			document the larger code size.

			Add additional entries to the SEE ALSO
			section.

			Add many new entries to the search engine URL
			list.

			Add GNU Emacs file-specific customization
			comment section at end.

		In bibsort.sh:

			Document and implement the new -?, -bypages, and
			-help options.  The new function pages_key()
			creates a sort key for the -bypages option.

			Document and implement the changed sort order
			of nonnumeric values.  The new functions
			numeric_value() and year_value() implement
			this.

			Change indentation of final command pipeline
			for better readability.

		In Makefile.in, add MAN2HTMLFLAGS so as to produce
		a .html file that passes html-check and html-ncheck.


[24-Sep-1999]	0.13
		Update to use GNU autoconfigure, in particular,
		allowing a choice of a faster awk implementation.

		Add support for GNU/POSIX style --options.

		Add support for -author, -copyright, and -version
		options [but forgot to document them in the manual
		pages].

		Replace brace_count() with a much more efficient
		version, giving up to a 25x speedup (when combined
		with a faster awk implementation).  Details can be
		found in the EFFICIENCY ISSUES section of the README
		file.


[24-Nov-1997]	0.12
		Add code to support the new -byseriesvolume option
		in bibsort.sh, and document it in bibsort.man.

		Add AVAILABILITY section of bibsort.man.

		Change MAN2HTML setting in Makefile to reflect
		installed location, rather than a private version.


[08-Nov-1996]	0.11
		Add code to replace visible newlines in the sort key
		with spaces, thereby eliminating spurious lines with
		embedded Ctl-K characters that could be left between
		BibTeX entries in the output from a multiline sort key.

		Rename all global variables (found by new profiling
		version of awk) to have initial capitals for each
		underscore-separated word, so that variables beginning
		with lowercase letters are known to be strictly local
		variables.

		Replace undefined global variable `unknown' with correct
		value `Unknown_Value'.  Although the test that used the
		undefined variable was wrong, I am not aware of any
		sorting failure caused by it.

		Add Warning_OK flag and use it to suppress warnings
		about missing journal/year/volume/number data for
		-byyear sorting.

		Change warning() output from /dev/tty to /dev/stderr,
		since the former cannot be trapped in a redirected file,
		and prevents background and batch use of bibsort.
		Although /dev/stderr is not available in all awk
		implementations, gawk, and recent AT&T awk, both have
		it, and bibsort.sh defaults to gawk anyway.

		Add dummy configure script and Makefile target check
		to supply GNUware-style simple installation.

[16-Sep-1996]	0.10
		Modify print_item() to add a secondary sort key made
		from the volume number, so that identical labels in a
		periodical bibliography (e.g. from a regular column)
		sort in publication order.

[17-Jan-1996]	0.09
		Add support and documentation for -byday switch.

[29-Oct-1994]	0.08
		Change sort key for -byvolume sorting to include
		year, so that entries that are missing volume numbers
		but have a year will be sorted with other entries from
		the same year.

		In function value(), change two patterns so that empty
		values of the form "" and {} are recognized properly.
		The old patterns incorrectly expected at least one
		character between the delimiters, which in the case of
		empty strings caused the next line to be included in
		the value string.  This in turn resulted in generation
		of a sort key with a line break, and after removal of
		the sort key, a partial sort key was left in the
		output stream.

[25-Sep-1994]	0.07
		Change sort key for -byvolume sorting to include
		beginning and ending page numbers as separate key
		fields, so that two entries with pages 31--31 and
		31--32 are correctly sorted.  Such instances actually
		occur in the journal Computing Surveys, where two or
		more letters to the editor can start on the same page.

[21-Sep-1994]	0.06
		In function squeeze(), multiple blanks preceding an
		open brace inside value strings were incorrectly
		eliminated.  Rewrite squeeze() to be more careful.

		In function collect_braced_item(), add check for
		meeting an apparent new entry before brace balance is
		achieved, and exit with an error code if this happens.

[??-???-1994]	0.05
		Changes not recorded.

[20-Jul-1994]	0.04
		Add support for recognition of booktitle, so that
		cross-referenced books can be sorted into the
		@Proceedings{...}  section as well.

[15-Jul-1994]	0.03
		Extend -byyear sorting to extract year from citation
		key of the form Jones:1992:ABC (BibNet Project style).

[09-Jun-1994]	0.02
		Add substantial additional commentary, and add support
		for sorting @Proceedings{...} entries in a separate
		section at the end, to conform to BibTeX's
		cross-referencing order requirements.

[17-May-1994]	0.01
		Add support for -byyear switch.

[13-Oct-1992]	0.00
		Initial working version.
