<html><head></head><body>
<p>Yes, my former method extension DateAndTime>>#milliSecond
accessed #nanos. I changed this to call #utcMicroseconds and
changed the name o fthe method to #milliseconds. This is in
version 117 of Cryptography that I had released.<br/>
<br/>
The remaining issue is DateAndtime class>>#readFrom: which
completely changed implementations and also produced different
results. This is a failure of DateAndTime to migrate to a new
internal representation, while preserving identical results to
former behavior. There are two representations of DateAndTime in
tthe test method under discussion. One is the ASN1 representation
and the other is an internet task force accepted textual
representation. The new #readFrom: misrepresents the result from
the textual representation. This is a clear error in core
DateAndTime, IMHO. The milliseconds are different, somehow.<br/>
<br/>
K, r<br/>
</p>
<div class="moz-cite-prefix">On 3/2/20 12:48 PM, Marcel Taeumel
wrote:<br/>
</div>
<blockquote type="cite" cite="mid:Mailbird-443a143b-6384-4a04-bc3c-27fd11a9da6c@hpi.de">
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<div id="__MailbirdStyleContent" style="font-size:
10pt;font-family: Arial;color: #000000"> Hi, there.
<div><br/>
</div>
<div>The internal representation of DateAndTime changed from</div>
<div><br/>
</div>
<div>seconds</div>
<div>offset</div>
<div>jdn</div>
<div>nanos</div>
<div><br/>
</div>
<div>in Squeak 5.2 to this in 5.3:</div>
<div><br/>
</div>
<div>utcMicroseconds</div>
<div>localOffsetSeconds</div>
<div><br/>
</div>
<div>---</div>
<div><br/>
</div>
<div>If tests in "Cryptography" relied on the internal
representation of DateAndTime, those tests have to be adapted.
Looking at ASN1Test >> #testUTCTime, this is the case:</div>
<div><br/>
</div>
<div>
<div>testUTCTime</div>
<div><br/>
</div>
<div><span style="white-space:pre"> </span>| bytes obj testObj
newBytes |</div>
<div><span style="white-space:pre"> </span><b>bytes := #[23 13
48 55 48 51 50 50 49 53 53 56 49 55 90].</b></div>
<div><span style="white-space:pre"> </span>testObj :=
DateAndTime fromString: '2007-03-22T15:58:17+00:00'.</div>
<div><span style="white-space:pre"> </span>obj :=
ASN1InputStream decodeBytes: bytes.</div>
<div><span style="white-space:pre"> </span>self assert: (obj =
testObj).</div>
<div><span style="white-space:pre"> </span>newBytes :=
ASN1OutputStream encode: testObj.</div>
<div><span style="white-space:pre"> </span>self assert: (bytes
asByteArray = newBytes).</div>
<div><span style="white-space:pre"> </span>newBytes :=
ASN1OutputStream encode: obj.</div>
<div><span style="white-space:pre"> </span>self assert: (bytes
asByteArray = newBytes).</div>
</div>
<div><br/>
</div>
<div>The "bytes" are different for (encoded) instances of
DateAndTime in Squeak 5.3.</div>
<div><br/>
</div>
<div>Best,</div>
<div>Marcel</div>
<blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top:
20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
<p style="color: #AAAAAA; margin-top: 10px;">Am 02.03.2020
18:31:51 schrieb Robert via Squeak-dev
<a class="moz-txt-link-rfc2396E" href="mailto:squeak-dev@lists.squeakfoundation.org"><squeak-dev@lists.squeakfoundation.org></a>:</p>
<div style="font-family:Arial,Helvetica,sans-serif">In truth,
this is an issue with incomplete DateAndTime testing. As
there <br/>
are resulting differences, this ought to be tested and
modified in the <br/>
package containing the core DateAndTime definition and NOT
an override <br/>
in the Cryptography package. I do not know who owns
DateAndTime. I will <br/>
continue to slowly dig into the issue..<br/>
<br/>
K, r<br/>
<br/>
On 3/2/20 12:23 PM, Robert wrote:<br/>
> In calling this method:<br/>
><br/>
> DateAndTime fromString: '2007-03-22T15:58:17+00:00'.<br/>
><br/>
> The results in 5.3 are different than in 5.2. This is
breaking 2<br/>
> ASN1Tests and 2 X509Tests. I am still in analysis of
the decoding<br/>
> differences. The methods between the two versions are
completely<br/>
> different. This breaks Cryptography.<br/>
><br/>
> K, r<br/>
><br/>
<br/>
<br/>
</div>
</blockquote>
</div>
</blockquote>
</body></html>