-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathRELNOTES
218 lines (169 loc) · 9.2 KB
/
RELNOTES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
$Header: /cvsroot/arsperl/ARSperl/RELNOTES,v 1.13 2003/04/24 18:39:18 jcmurphy Exp $
Release Notes for ARSperl
---------------------------------------------------------------------------
ARSperl - An ARS v2 - v5 / Perl5 Integration Kit
Copyright (C) 1995-2003
Joel Murphy, [email protected]
Jeff Murphy, [email protected]
This program is free software; you can redistribute it and/or modify
it under the terms as Perl itself.
Refer to the file called "Artistic" that accompanies the source
distribution of ARSperl (or the one that accompanies the source
distribution of Perl itself) for a full description.
Comments to: [email protected]
(this is a *mailing list* and you must be
a subscriber before posting)
Home Page: http://www.arsperl.org
---------------------------------------------------------------------------
1.80 Notes
----------
The 1.80 release includes ARS 5.x integration. When compiling against
ARS 5.x APIs, the ars_NT* functions (notifier library) will no longer
work. The notifier system has completely changed in release 5.0 of
ARsystem.
Regardless of what version of API you compile against, the following
functions have had their parameters altered which means that scripts
will need to be editted (unless you are using the OO layer).
Function What's Changed
--------------------------------------------------------------
ars_GetListEntry additional required parameter
ars_GetListEntryWithFields additional required parameter
The following functions have altered return values.
Function What's Changed
--------------------------------------------------------------
ars_GetCharMenu for query menus, the
labelField is no longer
a scalar. it's now an
array ref.
1.68 Notes
----------
The 1.68 release includes ARS 4.5 integration. When compiling against ARS
4.5 APIs, the following data structures will change which _might_ break
existing scripts. You might need to update those scripts when recompiling
ARSperl against the 4.5 (or later) libraries.
Data Structure Used/Returned By
--------------------------------------------------------------
Active Link Hash ars_GetActiveLink()
Active Link Hash ars_CreateActiveLink()
Filter Hash ars_GetFilter()
Escalation Hash ars_GetEscalation()
The majority of users should be unaffected by this since most probably
don't retrieve the actual definitions of these objects in their
scripts.
In addition, ars_Import() has changed. It now has a different
parameter list. This means that existing scripts will need to
be updated. See the documentation on this function for details.
When compiling against an API revision prior to ARS4.5, the hashes returned
by the above functions include a "schema" key which denotes which schema
the object is "attached" to. As of 4.5, it is possible to attach an object
to multiple schemas. The hash key has changed from a scalar (string) to an
array of (one or more) scalars and the name of the key has changed to
"schemaList".
On an unrelated note, the ars_GetCharMenu() call now decodes the "menuType"
hash key. Previously it was returned as a number (a raw enumeration value)
and you had to figure out on your own what that number meant. Now we decode
it so you get a string telling you what sort of menu it is. This change was
made to bring this function inline with how the other ARSperl functions
operate. Again, you might need to update some of your scripts. This change
is true regardless of what revision of the ARS API you compile against.
1.62 Notes
----------
The 1.62 release includes ARS 4.0 integration. There are a few things
that have changed regardless of what version of ARS you compile against
and there are things that have changed only if you are compiling against
v4.0 (or greater).
First, regardless of what version of ARS you are compiling this against,
ars_perl_qualifier now takes a control struct (in addition to the
encoded qualifier). When compiled against pre-4.0 APIs, the control struct
parameter is still required, but is ignored. IF YOU USE THIS ROUTINE IN
EXISTING SCRIPTS, THEY WILL NEED TO BE CHANGED.
Previously, when perl executed "use ARS;" it would automatically trigger a
call to ARS::__ars_init(). This routine was im`ortant for setting up
system specific stuff as well as preparing to connect to a private
server. Now this routine is part of ars_Login() because, as of 4.0, we need
the control structure that ars_Login() generates in order to call
ARInitialization (a.k.a. __ars_init). The __ars_init() routine is still
there and is callable, but doesn't do anything if you compile against ARS>=4.0
Similiarly, when your perl script exitted, ARS::__ars_Termination() was
automatically called for you. This can no longer be done because we, once
again, need the control structure when we are cleaning up (to release licenses,
etc). So, the functionality of this routine is now rolled into ars_Logoff().
This means that if you don't call ars_Logoff when your script completes (or
when it prematurely exits) you might not release your license. This shouldn't
affect too many things, but is something to keep in mind. You might want to
place END{} clauses in your scripts that can call ars_Logoff() if/when your
script(s) die().
Also note that, as of v4.0, the ARS API is now multithreaded. This means that
you must linking the POSIX threads library when compiling ARSperl. I have
not determined what impact this has under Windows NT. I would guess none since NT
is normally a threaded environment - you probably get the appropriate thread
routines either way.
1.6 Notes
---------
The 1.6 release marks the first real NT port. v1.5x attempted a port
to Active State's Perl for Windows, but wasn't successful. Bill Middleton
re-worked the source code and merged it into Gurusamy Sarathy's
version of perl for windows.
1.5 Notes
---------
This release contains serveral bug fixes and minor feature additions.
An effort was made to implement the remaining ARS functions, however,
it proved to be very time consuming to implement and test them. Therefore,
in this release most of the remaining functions have been implemented.
The rest will likely be implemented in a future release. See TODO for
a list of remaining functions.
1.4 Notes
---------
The notifier functions have been added to the main package. This allows
a script to connect and register itself as a user and then receive
notifications (examples are included). You can also send notifications from
a script.
Joel made all the changes to get it to compile and work against ARS3.0
So the current distribution will compile against 2.0, 2.1 and 3.0 libraries.
Everything basically remains the same so you don't need to modify your
scripts. The only things that change are the NT (notification) routines
to a certain extent. However, since NT (notification) support is new to
this release, this shouldn't be a problem.
The doc has been reorganized as well.
1.3 Notes
---------
We've added some features for performance analysis. In particular,
we've added the "profiling" feature to ARSperl. Now, when you call
ars_Login() it initializes a profiling variable that will track
the number of queries your script makes against the server. You
can then access this information using the ars_GetProfileInfo() call.
We send this information to syslog() automatically at the end of
each script and then process the syslog file later on to keep stats
on our API scripts. In this fashion, we can quickly determine which
scripts are triggered the most, and which make the most queries. We
can then concentrate out optimization efforts on those particular
API scripts.
In addition, a few new functions were added (GetFilter, GetCharMenu and
GetServerStatistics, ars_Export). The first two are used by the WhoUsesIt.pl
utility. This utility (found in the "examples" directory) is handy for
locating which filter or menu is referencing a particular file, or
seeing exactly what filters a particular schema uses.. etc. This
cuts down the amount of time it takes to figure out a poorly documented
system (what? poor documentation? not us!! :)
The GetServerStatistics function was added to provide a simpler method
for checking server health. I might provide a server analysis tool
built around this function in a future release.
Joel added a cache to the internal GetField routine. This should cut
down on the number of queries made by some of the functions like
GetFieldTable and such.
In addition, doing ars_SetEntry($ctrl, ..., $fieldId, undef) will now
correctly set a field to $NULL$
1.0 Beta User Notes
-------------------
o The library and extension seem fairly stable. However, bugs and
memory leaks might still occur. We've only been able to build it
under Solaris 2.x (4 and 5 to be specific) because that is what we
run ARS under. Users who attempt builds on other systems and are
successful should submit diffs back to us so that they can be
incorporated into the distribution.
o The WEB client example works (more or less) but there is much
room for improvement.
o There is a mailing list available for people to share their
thoughts concerning ARSperl.
---------------------------------------------------------------------------