
released=03/12/2007 version=1.90
TS  added missing ARError_reset() to ars_GetListVUI
TS  added ars_CreateCharMenu, ars_SetCharMenu
TS  added handling of case AR_CHAR_MENU_LIST in ars_GetCharMenu
TS  changed handling of qualifier struct in ars_GetCharMenu, case AR_CHAR_MENU_QUERY
TS  corrected function signature for ars_SetField, ars_CreateContainer
TS  bugfix in ars_GetCharMenu (incorrect array length for "labelFields", "labelIndex")
TS  added ars_SetImpersonatedUser
TS  bugfix in ARError (support.c, memory violation if appendedText == NULL)
TS  ars_SetLogging: changed declaration "int len" to "STRLEN len" because of 
    compilation problems on Solaris
TS  added ars_BeginBulkEntryTransaction, ars_EndBulkEntryTransaction
TS  added AR_FIELD_OFFSET handling in perl_ARFieldValueOrArithStruct (support.c)
TS  added ars_SetSessionConfiguration
TS  completed sv_to_ARCurrencyStruct (support.c)
TS  ARS.pm: set $ARS::logging_file_ptr = 0 to avoid "uninitialized" warning 
TS  changed t/01import.t to import form "ARSperl Test3"
TS  added ars_CreateContainer, ars_SetContainer
TS  added ars_CreateFilter, ars_SetFilter, ars_CreateEscalation, ars_SetEscalation,
    ars_SetActiveLink
TS  added declaration of boolcpyHVal(...) to supportrev.h
TS  added declaration of revTypeName(...) to supportrev.h
TS  added "rev_ARReferenceStruct" to supportrev.c
TS  changed perl_ARReferenceStruct (added "value_dataType" key, necessary for
    ars_CreateContainer)
TS  changed ars_CreateActiveLink to read "schemaList" from alDef struct
TS  bugfix in rev_ARMessageStruct
    ( hv_exists(h,"messageType"... ->  hv_exists(a,"messageType"... )
TS  moved declaration of rev_ARMessageStruct from supportrev.c to supportrev.h
TS  bugfix in rev_ARAssignFieldStruct_helper: hv_exists needs key length
TS  bugfix in rev_ARAssignFieldStruct_helper: hv_exists needs key length
    (dup_qualifier2(...) != NULL ... return ...)
TS  added case: AR_COND_OP_FROM_FIELD to dup_qualifier2
TS  added functions perl_ARSetFieldsActionStruct, perl_ARPushFieldsActionStruct;
    changed perl_ARFilterActionStruct accordingly.
TS  bugfix in rev_ARFunctionAssignStruct (parameterList[i] -> parameterList[i-1])
TS  bugfix in rev_ARArithOpAssignStruct_helper (AR_ARITH_OP_NEGATE uses operandRight,
    not operandLeft), fixed condition for AR_ARITH_OP_NEGATE.
TS  bugfix in rev_ARAssignSQLStruct
    (strcpyHVal(hr,"sqlCommand"...)  -> strmakHVal(hr, "sqlCommand"...))
TS  bugfix in rev_ARActiveLinkMacroParmList (... == SVt_PVAV -> ... == SVt_PVHV) 
TS  bugfix in rev_ARActiveLinkMacroParmList (copymem -> strdup) 
TS  changed rev_ARValueStructDiary to support non-hashref diary values
    (necessary in ARAssignStruct context)
TS  added ars_CreateSchema, ars_SetSchema, ars_CreateField, ars_SetField,
    ars_CreateVUI, ars_SetVUI
TS  added scripts (StructDef.pl, rev_AR_template.pl) for automatic generation of
    conversion code (perl data structures -> AR API structs)
TS  added module (ARS/CodeTemplate.pm) for code generation
TS  change in perl_ARFieldValueOrArithStruct; if tag == AR_VALUE, put dataType into hash
TS  added check for h != NULL to strcpyHVal 
TS  added "case AR_COND_OP_FROM_FIELD" to perl_qualifier()
TS  changed handling of qualifier structs in perl_ARFieldLimitStruct, perl_ARJoinSchema,
    perl_ARArchiveInfoStruct; those functions now return the converted perl structure
    instead of the pointer to a C structure. 
TS  fixed Makefile.PL to work with $ARSAPI containing spaces on Windows
TS  added ars_DeleteContainer (changes to ARS.xs, ARS.pm)
TS  fixed Makefile.PL to use $ra_arlibs for Version <= 5.0 on Windows
TS  fixed rev_ARValueStructStr2Type: use strcasecmp instead of strncasecmp
    (failure to differentiate between string and substring)
TS  added "case AR_DATA_TYPE_CURRENCY" to perl_ARValueStruct
TS  moved existing code for AR_DATA_TYPE_CURRENCY from sv_to_ARValueStruct
    to new function sv_to_ARCurrencyStruct, completed ARCurrencyStruct handling
TS  added handling of AR_DATA_TYPE_DATE, AR_DATA_TYPE_TIME_OF_DAY,
    to rev_ARValueStruct, sv_to_ARValueStruct
TS  added conversion functions rev_ARDisplayInstanceList,
    rev_ARDisplayInstanceStruct and rev_ARPermissionList
TS  fixed DESTROY(ctrl) (use safefree if allocated with safemalloc)
TS  minor fix in in rev_ARValueStructKW2KN (*keyword == '\0')
TS  minor fix in rev_ARCoordList_helper ( if (hv_exists("x"... )
TS  changed handling of keyword values in rev_ARValueStruct
    (assume "keyword" if first character == '\0' and length > 0)  
JCM minor update to example scripts Dump_User*.pl

released=09/20/2005 version=1.85
TS  added binmode-statements in t/10entry.t (test failed on win32)
TS  warning cleanup in test files (t/02export.t, t/13join.t)
TS  added ars_SetLogging (changes to ARS.xs, ARS.pm, support.c, support-h.template,
    html/manual/toc.html;  new files: html/manual/ars_SetLogging.html, t/21setlogging.t)
TS  fixed pointer dereferencing error in supportrev.c:strmakHval
TS  fixed supportrev.c:strcasecmp, strncasecmp; failure to differentiate between 
    string and substring (e.g. "page_holder" and "page")
TS  fixed support.c:perl_ARByteList (Bug ID 1213180)
    (David Lindes {lindes at users.sourceforge.net})
TS  added support for DATA_TYPE_CURRENCY to perl_ARFieldLimitStruct
TS  added function perl_ARCurrencyDetailList
TS  fixed support.c:my_strtok, perl_BuildEntryList
    (ars_GetEntry crashed when retrieving join form entries)
TS  added preprocessor directives (ARS.xs, support.c, support-h.template)
    for conditional compilation depending on API version
    (compiles now against version 4.5.1 to 6.3.0)
JCM added ars_encodeStatusHistory() routine 

released=06/24/2005 version=1.84
JCM fixed 'autosplit' issue in Makefile.PL
IT  Updates by Ian Trimnell for ars_GetListContainer and ars_GetContainer

released=03/14/2005 version=1.83
JCM fixed "lang" compilation error for API 6.3
JCM variable initialization
JG  doc updates

released=09/20/2004 version=1.82
QGM AR 6.x compatibility, AR encryption compatibility
JMc Makefile.PL changes, code cleanup for Windows build

released=08/09/2003 version=1.81
JCM memory/multithreaded issue with errhash fixed { steve.drew  at hp.com }
JCM uninitialized variable issue fixed { steve.drew  at  hp.com }
JCM memory free'ing on win32 issues fixed { steve.drew  at hp.com }
JCM minor fix to OO->query (forgot the new firstretrieve param)

released=04/16/2003 version=1.8001
JCM memory leak fixed in ars_CreateEntry
JCM memory leak fixed in ars_SetEntry
JCM memory leak fixed in ars_MergeEntry
JCM memory leak fixed in ars_Export
JCM memory leak fixed in ars_GetListEntry wrt to join forms
JCM memory leak fixed in QualifierStructPtr destructor
JCM memory leak fixed in ControlStruct destructor
JCM various other memory related cleanups
JCM bad/NULL ref fixed in ExpandCharMenu
JCM added new params to ars_Login: lang, authString, tcpport, rpcnumber
JCM added new rv's to ars_GetControlStructFields: lang, authString
JCM updated example and test scripts 
JCM added Alert functions (replaces NT/Notifier functions)
!JCM 5.x (5.0.1, 5.1, 5.1.1) integration<BR>
	functions that no longer are available or always
	return errors indicating they are no longer implemented:
	<blockquote>
		ars_NT*()   [notifier functions]
	</blockquote>
	functions whose parameters have changed:
	<blockquote>
		ars_GetListEntry()<BR>
		ars_GetListEntryWithFields()
	</blockquote>
	functions whose return values have changed:
	<blockquote>
		ars_GetCharMenu()
	</blockquote>

released=11/13/2002 version=1.74
GDF added ars_GetMultipleEntries, ars_GetListEntryWithFields
GDF remove unused num_entries parameter from ARGetListEntry
JCM added ARTermination calls to ars_Login

released=11/13/2001 version=1.73
JCM fixed windows cpp error in support.c
JCM fixed a leftover fprintf warning in support.c that was causing
    compilation warnings on windows
JCM disabled t/11entry.t
JCM minor Makefile.PL tweak
JCM bug fix in perl_ARStatusStruct that caused segv with api >= 4.0

released=10/24/2001 version=1.72
JCM modified Makefile.PL to handle changes to _SERVER_INFO definitions
    in 4.5.x
JCM memory leak fixes
JCM duplicate free badness in ars_Login() fixed
JCM updated doc for ars_MergeEntry
JCM added form->merge() call to OO layer
JCM fixed 4.5.2 induced warning (now there's a FilterActionStruct)
    modified Makefile.PL so you can specify ARVERSION=4.52 

released=10/30/2000 version=1.71
JCM modified support-h.template to compile against api3.0

released=9/21/2000 version=1.70
JCM modified support-h.template to compile against api3.2
JCM bug fix to ars_Import()

released=8/31/2000 version=1.69
JCM added ars_SetServerInfo() call
JCM added infra/pcpp.pl which is used to convert the xs
    and c files into something that will compile against
    activestate perl 5.6
JCM modifications to Makefile.PL to ease win32 compilations
JCM fixed bug in support.c:lookUpTypeName
JCM enhanced ars_Export to handle all possible export types
    in whatever api we're compiled against
JCM enhanced ars_Import to handle all possible import types
    in whatever api we're compiled against
JCM typo fix in ARS.xs for perl5.6 compatibility
JCM documenation update (ars_Import)

released=7/4/2000 version=1.68
JCM modifications to example/ars_GetListEntry.pl to make
    it function with different revisions of the User form.
JCM arsperl now requires at minimum perl 5.004.
JCM converted "na" "sv_unref" to PL_ namespace. 
    added perl-version checking so it will still compile
    against 5.004.
!JCM ars4.5 compatibility changes. the following functions
      have altered return values which will break scripts that
      use them <U>if you compile against 4.5 or later libraries</U>
           <blockquote>
                ars_GetActiveLink<BR>
                ars_GetFilter<BR>
                ars_GetEscalation<BR>
                ars_CreateActiveLink<BR>
           </blockquote>
      see the documentation on the return values of these functions
      for details on what has changed.
!JCM changed ars_GetCharMenu so that {'menuType'} is returned
      as a string (decoded) instead of an integer.
!JCM added a parameter to ars_Import which will require that existing
     scripts be updated. see documentation for details.
JCM added patch submitted by Geoff Endresen which enabled decoding
    of push fields actions in GetFilter()
JCM enhanced Makefile.PL to be more intelligent when h2ph fails or
    doesnt exist
JCM added/decoded schemaType (within GetSchema()/CompoundSchema structure)
JCM documentation updates

released=2/17/00 version=1.67
JCM  ars_SetServerPort() added
JCM  fixed bug in ars_GetListSQL()

released=12/3/99 version=1.66
JCM  fixed a typo in support.c 

released=11/23/99 version=1.65
JCM  added better support for decoding filters/activelinks
     for arsystem 4.0 (not finished yet)
JCM  added support for data type "decimal" when performing
     (Set|Create)Entry

released=04/7/99 version=1.6403 BETA
JCM  tested/fixed compiling against pre-4.0 apis. 
JCM  OO: now checks named params to ensure you don't
           mis-spell them.
JCM  attachment allows specify a 'name' hash key so you can
           customize the name that appears in the attachment field
           in the usertool.  (Nick Stoughton {NickS at ISRWORLD.com})
JCM  OO: form->setSort method added
JCM  OO: better error handling/catching
JCM  OO: fixed bug in value2internal
JCM  fixed NTRegisterServer(), fixed example/3.x/Notifier.pl
JCM  OO: fixed ARS::AR_RETURN_* bugs { erik.dorfman at intelsat.int }
JCM  fixed bug in ars_GetListServer() for api &gt;= 4.0

released=03/12/99 version=1.6400 BETA
JCM  added new LIBS line to Makefile.PL to cover NCR Unix
           ("Hill, David K" {david.k.hill at intel.com})
JCM  added ars_GetEntryBLOB (attachment field handling) 
           thanks to  "Kaelin Colclasure" {kaelin at talarian.com}
           for supplying part of the code for the BLOB functions.
JCM  simplified Makefile.PL configuration steps
JCM  added attachment example scripts
JCM  added basic OO layer
JCM  added small test suite
JCM  fixed some broken 4.0 related conditional compilation
           stuff
JCM  makefile now automatically converts C header files into
           perl files so that all constants (C 'defines') are
           available.

released=01/04/99  version=1.63
JCM  fixed some missing conditional compilation #if's in code
JCM  changes "require Config" to "use Config" in Makefile.PL
           at the request of activestate
JCM  added MANIFEST file to distribution

released=12/28/98 version=1.62
JCM  added extra decoding code to GetFilter.pl example script
JCM  syntax errors fixed in some example scripts
JCM  added bug fix to NTRegisterServer from  G David Frye {gdf at uiuc.edu}
!JCM  ars4.0 integration (see RELNOTES for important compatibility
           information)
!JCM  perl_qualifier() now takes a control struct 
JCM  if compiled against API &gt;= 4.0 then __ars_init __ars_term
           no longer do anything (but are still there). the functionality
           of each of these have been rolled into ars_Login and ars_Logoff
           respectively.
JCM  added ars_APIVersion() 
JCM  GetActiveLink, when compiled against 4.0 returns ARMessageStruct
JCM  applied some changes contributed by Murray Nesbitt 
           {murray at ActiveState.com} so that it will compile against the
           active state version of perl more easily. 
JCM  changed licensing to match that of perl itself.

released=09/16/98 version=1.61
JCM  new utility: example/AddUsersToGroup.pl - bulk add a bunch
		of users to a specified group 
JCM  new utility: example/DelUsersFromGroup.pl - bulk delete a bunch
		of users from a specified group 
JCM  fixed uninitialized variable warnings
JCM  fixed various problems with join schema entry-id handling
JCM  fixed bug in indexList returned by ars_GetSchema()
!JCM  updated all Get&lt;object&gt; functions so that changeDiary
           is fully decoded.
!JCM  changed return value of ars_DeleteEntry() so that
           ars_DeleteEntry() || die() will work as expected.
JCM  fixed problem in example/Show_ALink.pl
JCM  added/updated helper func: ars_decodeStatusHistory()
JCM  added example/ars_decodeStatusHistory.pl
JCM  fixed ars_GetSchema typo/bug w/regards to adminGroupList
JCM  fixed GetField.pl example so that it decodes everything
JCM  patch for bug in ars_GetServerInfo()
JCM  updated Makefile.PL to dynamically generate the support.h
           file based on the ar.h file specified.

released=05/04/98 version=1.6001 BETA
BM   patch for bug in ars_CreateEntry()
JCM  added ARS32 conditional compilation for AdminExtension 
     routines (which were removed as of ars3.2 api)

released=03/31/98 version=1.6000 BETA
BM   removed most of the PPERLC and AWP stuff that was intended
	   to help the port to ActiveState perl.  Use the One True Perl.
BM   Changed many of the allocations to use perl's memory manager,
 	   except where the structure or element is grown further internally
	   by ARS, or where the structure is non-trivial to free().  I still
	   have concerns about some of the un-freed allocations in 
	   supportrev.c, but at least ALL of the demo scripts, 
	   including ARSDoc-1.11 (with small patch submitted to list) now 
	   run, and produce the right results.
BM   Removed all references to ZEROMEM in favor of perl's Zero, which
	   is guaranteed to work everywhere, and doesn't need additional logic.
BM   fixed a couple of small typos, including one in a elliptical 
	   declaration (...) which didn't have a comma separator.
BM   Changed the logic of CVLD in one place that was attempting to free()
	   null pointers.

released=03/31/98 version=1.56
JCM  fixed a problem caused by some debugging code that
           was left in 1.55 accidentally.

released=03/30/98 version=1.55
JCM  added ars_GetListEntry.pl example to show how to use
           custom query-list fields.
JCM  numerous documentation updates by {D.J.Adams at soton.ac.uk}
JCM  fixed bug in macroParm decoding. {D.J.Adams at soton.ac.uk}
JCM  fixed bug when decoding results of GetFilter/GetActiveLink
           in regards to set fields actions: values assigned to
           diary fields were not being interpretted correctly.
           {D.J.Adams at soton.ac.uk}
JCM  patched perl_BuildEntryIdList to make it more robust
           (Ulrich Pfeifer {pfeifer at wait.de})
JCM  patched ars_GetCharMenu for bug "GetCharMenu doesn't
          return a qualifier for query menus" {D.J.Adams at soton.ac.uk}
JCM  fixed dup_FieldValueOrArith to support decoding of
           query style menus. 

released=02/09/98 version=1.54
JCM  fixed bug in ars_EncodeDiary()
JCM  added ars_MergeEntry.pl example script

released=12/15/97        version=1.53
JCM  fixed some minor errors in doc

released=11/19/97      version=1.5206
JCM  added ars_GetVUI to the ARS.pm exports line.
JCM  added refreshCode to GetCharMenu hash
JCM  fixed bug in groupList value change in 1.5205

released=11/04/97	version=1.5205
JCM  updated the groupList value returned by GetSchema()
           so that it contains the correct key words.

released=10/29/97  version=1.5204
JCM  added ars_GetControlStructFields()

released=10/20/97   version=1.5203
JCM  beginnings of a WinNT port (not completed yet)
JCM  added "timestamp" to the return hash of GetEscalation()
JCM  added some extra malloc/free debugging stuff

released=10/13/97    version=1.5202
JCM  removed a superfluous debugging statement

released=10/09/97       version=1.5201
JCM  fixed problem in GetEscalation     

released=10/08/97        version=1.52
JCM  fixed core dump problem due to uninitialized variable(s)

released=10/07/97        version=1.51
JCM   fixed some typos/symbol errors. added a missing routine.

released=10/06/97        version=1.50
JCM removed ars_errstr from C code. replaced with ars_errhash.
           modified ARS.pm to refer to hash when $ars_errstr is 
           accessed. $ars_errstr no longer tie'd to main:: package.
JCM bug fix (Sid Van den Heede) "affecting getting of
           displayInstanceList"
JCM bug fix (James LewisMoss) for ars_GetCharMenu()
JCM bug fix (Ian Flanigan) for perl_ARIndexStruct()
JCM modified GetListEntry(), GetEntry(), SetEntry() and 
           DeleteEntry() to make operations on join schemas 
           transparent.
JCM added a ARVerifyUser call to ars_Login so that
           ars_Login() || die() will work as one would expect it to.
JCM added $VERSION to the perl module file.
JCM added "log to file" action to GetFilter action hash 
           (requested by {D.J.Adams at soton.ac.uk})
JCM added updated doc tree to main distribution (contributed by
	   {D.J.Adams at soton.ac.uk})
JCM new functions and doc on new functions and new examples for some
	   of these new functions.
!JCM altered return value of perl_ARStatusStruct so that it 
           returns a hash of the various StatusStruct members so that
           reversing the operation is simpler. scripts that, for example,
           retrieve active link definitions and print them out that previous
           expected the {message} key to point to a string will need to
           be updated.
JCM added valueType to the assign structure to assist in 
           reversing the operation (converting perl to C API assign 
           structure).
JCM added displayTag as an optional parameter to ars_LoadQualifier()
           so that you can build queries against customized views (that
           are stored on the server).
JCM altered ARError() so that return codes of OK or WARNING don't
           signal an error. For example, GetListEntries would return
           nothing if you matched more than the max allowed, now it returns
           the max allowable number of records and places a warning message
           into the error hash. 

released=05/22/97        version=1.46
JWM bug fixes
JWM new function: ars_MergeEntry(), ars_EncodeDiary()

released=04/25/97        version=1.45
JCM bug fix to GetListSchema routine

released=02/20/97        version=1.44
JCM added some minor code to aid in decoding qualifier
           structs. added some examples of decoding them.

released=02/18/97        version=1.42
JWM added destructors for the ARS package that will correctly
           call ARTermination when the package is unloaded (when your
           script exits).
JWM fixed minor type casting problem that prevented compilation
           on HP-UX
JCM compiled with -Wall and cleaned up some suspicious code.

released=02/17/97        version=1.41
JCM added NT routines to html doc
JCM fixed a few compile-time problems

released=02/13/97        version=1.4
JCM re-organized documentation and web pages
JCM added NT (notifier) functions
JWM bug fixes for 1.32beta

released=02/10/97        version=1.32beta
JWM 3.0 integration

released=11/11/96        version=1.31
JCM minor stuff: added an ifndef in the GetCharMenu routine
            for ars 2.0 users. 2.0 doesnt support SQL menu constructions.

released=11/11/96	version=1.3
JWM undef works in setEntry now.
JWM added ars_Import to complement ars_Export
JCM Profiling code added to keep track of number of
	    queries made.
JWM Field caching code added to make some of the functions
	    more efficient.
JCM New functions: ars_GetFilter(), ars_GetCharMenu(), 
		ars_GetServerStatistics
JWM Internal GetField call now caches results to minimize
		number of queries made.
JCM Examples of new functions. 
JCM "WhoUsesIt.pl" utility

released=01/12/96	version=1.0beta
JWM First release 
JCM Installation, history, and Gnu documentation added.
            Removed -lars from makefile (internal C library that wasn't
            released), not needed for arsperl.
JCM Added example scripts and html documentation.

