ARSperl: Revision History

The following lists the changes that have been made for each release of ARSperl.

1.6400 beta
  - added new LIBS line to Makefile.PL to cover NCR Unix ("Hill, David K" )
  - added ars_GetEntryBLOB (attachment field handling) thanks to "Kaelin Colclasure" for supplying part of the code for the BLOB functions.
  - simplified Makefile.PL configuration steps
  - added attachment example scripts
  - added basic OO layer
  - added small test suite
  - fixed some broken 4.0 related conditional compilation stuff
  - makefile now automatically converts C header files into perl files so that all constants (C 'defines') are available.
1.63
  - fixed some missing conditional compilation #if's in code
  - changes "require Config" to "use Config" in Makefile.PL at the request of activestate
  - added MANIFEST file to distribution
1.62
  - added extra decoding code to GetFilter.pl example script
  - syntax errors fixed in some example scripts
  - added bug fix to NTRegisterServer from G David Frye <gdf@uiuc.edu>
  - ars4.0 integration (see RELNOTES for important compatibility information)
  - perl_qualifier now takes a control struct
  - if compiled against API>=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.
  - added ars_APIVersion()
  - GetActiveLink, when compiled against 4.0 returns ARMessageStruct
  - applied some changes contributed by Murray Nesbitt <murray@ActiveState.com> so that it will compile against the active state version of perl more easily.
  - changed licensing to match that of perl itself.
1.61
  - new utility: example/AddUsersToGroup.pl - bulk add a bunch of users to a specified group
  - new utility: example/DelUsersFromGroup.pl - bulk delete a bunch of users from a specified group
  - fixed various problems with join schema entry-id handling
  - fixed uninitialized variable warnings
  - fixed bug in indexList returned by ars_GetSchema()
  - updated all Get<object> functions so that changeDiary is fully decoded.
  - changed return value of ars_DeleteEntry() so that ars_DeleteEntry() || die() will work as expected.
  - fixed problem in example/Show_ALink.pl
  - added/updated helper func: ars_decodeStatusHistory()
  - added example/ars_decodeStatusHistory.pl
  - fixed ars_GetSchema typo/bug w/regards to adminGroupList
  - fixed GetField.pl example so that it decodes everything
  - patch for bug in ars_GetServerInfo()
  - updated Makefile.PL to dynamically generate the support.h file based on the ar.h file specified.
1.6001 BETA
  - patch for bug in ars_CreateEntry()
  - added ARS32 conditional compilation for AdminExtension routines (which were removed as of ars3.2 api)
1.6000 BETA
  - removed most of the PPERLC and AWP stuff that was intended to help the port to ActiveState perl. Use the One True Perl.
  - 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.
  - Removed all references to ZEROMEM in favor of perl's Zero, which is guaranteed to work everywhere, and doesn't need additional logic.
  - fixed a couple of small typos, including one in a elliptical declaration (...) which didn't have a comma separator.
  - Changed the logic of CVLD in one place that was attempting to free() null pointers.
1.56
  - removed most of the PPERLC and AWP stuff that was intended to help the port to ActiveState perl. Use the One True Perl.
  - 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.
  - Removed all references to ZEROMEM in favor of perl's Zero, which is guaranteed to work everywhere, and doesn't need additional logic.
  - fixed a couple of small typos, including one in a elliptical declaration (...) which didn't have a comma separator.
  - Changed the logic of CVLD in one place that was attempting to free() null pointers.
1.56
  - fixed a problem caused by some debugging code that was left in 1.55 accidentally.
1.55
  - added ars_GetListEntry.pl example to show how to use customer query-list fields.
  - numerous documentation updates by D.J.Adams@soton.ac.uk
  - fixed bug in macroParm decoding. (D.J.Adams@soton.ac.uk)
  - 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@soton.ac.uk)
  - patched perl_BuildEntryIdList to make it more robust (Ulrich Pfeifer <pfeifer@wait.de>)
  - patched ars_GetCharMenu for bug "GetCharMenu doesn't return a qualifier for query menus" (D.J.Adams@soton.ac.uk)
  - fixed dup_FieldValueOrArith to support decoding of query style menus.
1.54
  - Fixed bug in ars_EncodeDiary().
  - Added ars_MergeEntry.pl example script.
1.53
  - minor doc fixes
1.5206 (beta)
  - added ars_GetVUI to the ARS.pm exports line.
  - added refreshCode to GetCharMenu hash
  - fixed bug in groupList value change in 1.5205
1.5205 (beta)
  - updated groupList returned by GetSchema() call so that it contains the correct keywords.
1.5204 (beta)
  - added ars_GetControlStructFields()
1.5203 (beta)
  - beginnings of a WinNT port (not completed yet)
  - added "timestamp" to the return hash of GetEscalation()
  - added some extra malloc/free debugging stuff
1.5202 (beta)
  - removed some debugging code that was left in
1.5201 (beta)
  - fixed problem in GetEscalation
1.52 (beta)
  - fixed core dump problem due to uninitialized variable(s)
1.51 (beta)
  - fixed some typos/symbol errors. added a missing routine.
1.50 (beta)
  - 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.
  - bug fix (Sid Van den Heede) "affecting getting of displayInstanceList"
  - bug fix (James LewisMoss) for ars_GetCharMenu()
  - bug fix (Ian Flanigan) for perl_ARIndexStruct()
  - modified GetListEntry(), GetEntry(), SetEntry() and DeleteEntry() to make operations on join schemas transparent.
  - added a ARVerifyUser call to ars_Login so that ars_Login() || die() will work as one would expect it to.
  - added $VERSION to the perl module file.
  - added "log to file" action to GetFilter action hash (requested by D.J.Adams@soton.ac.uk)
  - added updated doc tree to main distribution (contributed by D.J.Adams@soton.ac.uk)
  - new functions and doc on new functions and new examples for some of these new functions.
  - 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.
  - added valueType to the assign structure to assist in reversing the operation (converting perl to C API assign structure).
  - added displayTag as an optional parameter to ars_LoadQualifier() so that you can build queries against customized views (that are stored on the server).
  - 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.
1.46
  - bug fixes
  - ars_MergeEntry() added
1.45
  - minor bug fix to the GetListSchema routine
1.44
  - added some extra code to assist in decoding qualifier structures
  - included PrintQual.pl and ars_QualDecode.pl examples to show how to do it.
  - modified GetFilter.pl example to dump the qualification that is on the filter.
1.43
  - fixed some bad pointer/bad free problems
1.42
  - Minor bug fix for HP-UX
  - Compiled with -Wall and cleaned up quite a few questionable pieces of code.
  - Added destructors for the package that will correctly call ARTermination() when the script exits.
1.41
  - Bug fixes to 1.4
  - Added ars_GetCurrentServer()
  - Modification made to ars_Login() (suggested by Peter de Salis)
  - NT (notifier) function documentation add to programmer's guide.
1.4
  - Bug fixes to 1.32
  - NT (notifier) functions added.
  - Improved documentation.
1.32 (beta)
  - ARS3.0 integration
1.31
  - minor fix to allow v1.3 to work with ARS2.0
1.3
  - Profiling code added to keep track of number of queries made.
  - Field caching code added to make some of the functions more efficient.
  - New functions: ars_GetFilter(), ars_GetCharMenu(), ars_GetServerStatistics
  - Internal GetField call now caches results to minimize number of queries made.
  - Examples of new functions.
  - "WhoUsesIt.pl" utility

1.22
  - fixed the bug in arsperl that caused SetEntry to not always work correctly. The bug only appeared when you passed that fields in an array.

Back to ARSperl Home Page