Compatibility/Bug fixes in V7.8: Difference between revisions
mNo edit summary |
|||
Line 103: | Line 103: | ||
<li>Possible use of <var>UAI SORT</var> key as hashed file sort key. | <li>Possible use of <var>UAI SORT</var> key as hashed file sort key. | ||
<p> | <p> | ||
For example, the | For example, the following code (incorrectly) completes without any indication of error in <var class="product">Sirius Mods</var> 7.7, but in 7.8 it is flagged as an error:</p> | ||
<p class="code"><nowiki>* Fast/Unload step: | <p class="code"><nowiki>* Fast/Unload step: | ||
UAI SORT FOO LENGTH 3 TRUNC | UAI SORT FOO LENGTH 3 TRUNC | ||
Line 119: | Line 119: | ||
</nowiki></p> | </nowiki></p> | ||
<li>A spurious error ("TAPEI format error" or unkown field) is issued | <li>A spurious error ("TAPEI format error" or unkown field) is issued | ||
if the first <var>UAI SORT</var> item is a <var class="product">FUEL</var> %variable, and the subsequent <var>LAI</var> | if the first <var>UAI SORT</var> item is a <var class="product">FUEL</var> %variable, and the subsequent <var>LAI</var> | ||
Line 127: | Line 126: | ||
version 4.5, ZAP4518 is required. | version 4.5, ZAP4518 is required. | ||
</ul> | </ul> | ||
==Version corequisites== | ==Version corequisites== | ||
This section lists any restrictions on usage of various products | This section lists any restrictions on usage of various products |
Revision as of 18:41, 14 March 2011
{{#hierarchy-top:}}
This chapter lists any compatibility issues with prior versions of the Sirius Mods and any bugs which have been fixed in this version of the Sirius Mods but had not, as of the date of this release, been fixed in the previous generally available version (7.7).
In general, backward incompatibility means that an operation which was previously performed without any indication of error, now operates, given the same inputs and conditions, in a different manner. We may not list as backwards incompatibilities those cases in which the previous behaviour, although not indicating an error, was “clearly and obviously” incorrect, and which are introduced as normal bug fixes (whether or not they had been fixed with previous maintenance).
Backwards incompatibilities
Backwards incompatibilities are described per product in the following sections.
Janus SOAP XmlDoc API
The following backwards compatibility issues have been introduced in the Janus SOAP XmlDoc API.
AddToRecord constraint on "number" attribute
As described in "Structure of XmlDoc for AddToRecord", if the "number" attribute of the "Record" element in the input XmlDoc of the AddToRecord subroutine is present, it must be an integer greater than or equal to -1.
Previously, this attribute was ignored.
DefaultURI argument of AddSubtree
In some cases, an Element in a default namespace, which was added to the XmlDoc by a deserialization method, will not get the correct namespace URI when it is copied using the DefaultURI argument of the AddNamespace subroutine.
Note that this problem was also fixed (with the resulting incompatibility) in the version 7.7 Sirius Mods by maintenance supplied by ZAP77A4 on 17 August, 2010.
For example:
Text To %sl <a:a xmlns:a="http://aaa" xmlns="http://ddd"> <b:b xmlns:b="http://bbb"> <c>123</c> </b:b> </a:a> End Text %in:LoadXml(%sl) %n Object XmlNode %n = %in:SelectSingleNode('/*/*') %out:AddSubtree(%n, DefaultURI='u:who')
Prior to fixing this problem, the above results in:
<b:b xmlns:b="http://bbb"> <c xmlns="http://ddd"> 123 </c> </b:b>
The correct result, as produced by version 7.8 of the Sirius Mods or
version 7.7 with with ZAP77A4 applied,
is as follows (note the namespace for element c
):
<b:b xmlns:b="http://bbb"> <c xmlns="u:who"> 123 </c> </b:b>
Deserialization prohibits default namespace declaration with Namespace=None
With the XmlDoc Namespace property set to None, namespace declarations that bind a prefix are not allowed. For example:
<foo xmlns:p="http://p.com/>
The above has never been allowed, due to the prohibition against colons in XML names when Namespace is None.
However, previous versions of the Sirius Mods allowed deserialization of a default namespace declaration. For example:
<foo xmlns="http://p.com/>
The above was erroneously treated as if xmlns
were an attribute.
Deserialization of default namespace declarations is no longer allowed.
This fix was also introduced in version 7.7 of the Sirius Mods, via ZAP77B2.
Janus SOAP ULI
Unspace method now converts all-whitespace string to null
Prior to Version 7.8 of the Sirius Mods, the intrinsic String Unspace method compressed a string consisting entirely of whitespace characters to a single whitespace character.
For example, note the single blank in the result of PrintText {~} = X{' ':unspace}X
:
' ':unspace = X X
In version 7.8 (and also in Sirius Mods version 7.7 via ZAP7761), Unspace converts a string of whitespace characters to the null string. After this fix is in effect, the PrintText statement above produces a null string:
' ':unspace = XX
Fixes in Sirius Mods 7.8 but not in 7.7
This section lists fixes to functionality existing in the Sirius Mods version 7.7 but which, due to the absence of customer problems, have not, as of the date of the release, been fixed in that version.
LoadSystemMethodInfo returning Unicode methods
The LoadSystemMethodInfo now returns information for Unicode intrinsic methods.
Fast/Reload LAI with various UAI SORT cases
The following two bugs have been fixed:
- Possible use of UAI SORT key as hashed file sort key.
For example, the following code (incorrectly) completes without any indication of error in Sirius Mods 7.7, but in 7.8 it is flagged as an error:
* Fast/Unload step: UAI SORT FOO LENGTH 3 TRUNC ... * Fast/Reload step: CREATE FILE (NOFORMAT) QAWORK PARAMETER FILEORG 8 END OPEN QAWORK *UPDATE IN QAWORK INITIALIZE HASH FOO FILELOAD -1,-1,0,3000000,10000,10000,10000,32 LAI
- A spurious error ("TAPEI format error" or unkown field) is issued if the first UAI SORT item is a FUEL %variable, and the subsequent LAI is loaded into a non-sort, non-hash file. Note that the Fast/Unload UAI output file must also contain the correct value to fix this bug; with version 4.4 of Fast/Unload, ZAP4414 is required, with version 4.5, ZAP4518 is required.
Version corequisites
This section lists any restrictions on usage of various products (including Sirius Mods itself) that will be imposed by use of version 7.8 of Sirius Mods.
- There are no corequisites associated with Sirius Mods 7.8.
{{#hierarchy-bottom:}}