Roman Numeral Conversion API Logo
Screen Shots
SourceForge Resources
Report Bugs
Browse CVS
Man Pages

#   $Id: ChangeLog,v 1.14 2008/02/02 08:03:20 syzdek Exp $
#   Roman Numeral Conversion API
#   Copyright (C) 2007 David M. Syzdek 
#   Permission is granted to copy, distribute and/or modify this document
#   under the terms of the GNU Free Documentation License, Version 1.2
#   or any later version published by the Free Software Foundation;
#   with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
#   A copy of the license is included in the section entitled "GNU
#   Free Documentation License".
#   ChangeLog - list of changes made to each revision

0.0.4	2008/02/01
	- updated comments of function declarations and function prototypes
	  to match the purpose of the function. Some of the comments had been
	  copied and pasted when creating new functions without having the
	  comments updated. (syzdek)
	- updated comments of global variables to better describe the purpose
	  of the variable (syzdek)
	- Moved missing errno declarations required to compile
	  from include/roman.h to lib/libroman.h (syzdek)
	- arranged functions lib/libroman.c so that they are in alphabetical
	  order (syzdek)
	- enabled additional GCC warnings with strict warnings (syzdek)
	- updated romannum to automatically determine which conversion to
	  perform on the specified number (syzdek)
	- updated LIB_VERSION_INFO to 2:0:1 to accommodate changes to (syzdek)
	- replaced functions long2roman, long2roman_r, and roman2long with
	  int2roman, int2roman_r, roman2int to make function names more
	  accurate (syzdek)
	- added checks to prevent patterns like IIIII, XXXXX, CCCCC, and
	  MMMMM from being accepted by roman2int() [thanks to Jerome Couderc
	  for reporting this bug] (syzdek)
	- added checks to roman2int() which prevent V, L, and D from preceding
	  larger values [thanks to Jerome Couderc for reporting this bug]
	- updated logic that is used to test the syntax in romain2int()
	  which provides syntax checking (syzdek)

0.0.3	2007/12/09
	- fixed error checking in long2roman().  The previous version would
	  allow a number line MIMM, XIXX, CXCC.  However the following would
	  fail on MMIM, XXIX, and CCXC.  The function now correctly reports
	  and error for the first set of numbers and allows the second set of
	  numbers. (syzdek)
	- added tests to help avoid problems like the above (syzdek)

0.0.2	2007/12/09
	- changed command line options for romannum to `-a' for Arabic numerals
	  instead of using `-d' for decimal numerals. (syzdek) 
	- added long2roman_r(), roman_asctime(), roman_asctime_r,
	  roman_ctime_r, and roman_strftime() to library (syzdek)
	- re-wrote long2roman() to use long2roman_r() (syzdek)
	- changed input variable for long2roman() from 'unsigned' to 'signed'
	  so that negative numbers do not produce an error (syzdek)
	- re-wrote roman_ctime() to use roman_strftime() (syzdek)
	- updated "romandate" to use roman_strftime() (syzdek) 
	- updated "romandate" to accept custom format strings displaying the
	  date and time (syzdek)
	- updated "romandate" to allow display of UTC time (syzdek)
	- moved Roman numeral chart array from library source to utility
	  source hoping it helps the MinGW32 cross compiled binaries (syzdek)
	- improved Roman Numeral checking by disallowing the use of the
	  addition and subtraction method using the symbol [Example: XCX == C
	  or IXI == X] and disallowing duplicate V, L, and D symbols in the
	  same Roman Numeral [Example: VV == X or LL == 100] (syzdek)
	- functions now return error conditions using errno (syzdek)

0.0.1	2007/12/02
	- initial release of package (syzdek)

# end of ChangeLog