David T. Lewis uploaded a new version of Kernel to project The Trunk: http://source.squeak.org/trunk/Kernel-dtl.705.mcz
==================== Summary ====================
Name: Kernel-dtl.705 Author: dtl Time: 9 July 2012, 10:38:16.262 pm UUID: b52aa671-18a1-43f6-b389-4430bfc0fe9a Ancestors: Kernel-ul.704
Patch by JohnReed Maffeo for Mantis 7693: DateAndTime readFrom: does not recognize $Z as a valid timezone designator.
http://bugs.squeak.org/view.php?id=7693
Change Set: DateAndTime Date: 9 July 2012 Author: jrm
Method readFrom: in Class DateAndTime modified to interpret $Z as a valid time zone designator. Associated test modified to verify the new behavior.
=============== Diff against Kernel-ul.704 ===============
Item was changed: ----- Method: DateAndTime class>>readFrom: (in category 'squeak protocol') ----- readFrom: aStream
| offset date time ch |
date := Date readFrom: aStream. [aStream peek isDigit] whileFalse: [aStream next]. time := Time readFrom: aStream. aStream atEnd + ifTrue: [ (aStream last = $Z) ifTrue: [offset := Duration zero] ifFalse: [ offset := self localOffset ]] - ifTrue: [ offset := self localOffset ] ifFalse: [ ch := aStream next. ch = $+ ifTrue: [ch := Character space]. offset := Duration fromString: ch asString, '0:', aStream upToEnd, ':0']. ^ self year: date year month: date monthIndex day: date dayOfMonth hour: time hour minute: time minute second: time second nanoSecond: time nanoSecond offset: offset
" '-1199-01-05T20:33:14.321-05:00' asDateAndTime ' 2002-05-16T17:20:45.1+01:01' asDateAndTime
' 2002-05-16T17:20:45.02+01:01' asDateAndTime
' 2002-05-16T17:20:45.003+01:01' asDateAndTime
' 2002-05-16T17:20:45.0004+01:01' asDateAndTime ' 2002-05-16T17:20:45.00005' asDateAndTime ' 2002-05-16T17:20:45.000006+01:01' asDateAndTime
' 2002-05-16T17:20:45.0000007+01:01' asDateAndTime ' 2002-05-16T17:20:45.00000008-01:01' asDateAndTime ' 2002-05-16T17:20:45.000000009+01:01' asDateAndTime ' 2002-05-16T17:20:45.0000000001+01:01' asDateAndTime
' 2002-05-16T17:20' asDateAndTime ' 2002-05-16T17:20:45' asDateAndTime ' 2002-05-16T17:20:45+01:57' asDateAndTime ' 2002-05-16T17:20:45-02:34' asDateAndTime ' 2002-05-16T17:20:45+00:00' asDateAndTime ' 1997-04-26T01:02:03+01:02:3' asDateAndTime "!
squeak-dev@lists.squeakfoundation.org