[squeak-dev] The Trunk: Chronology-Core-dtl.80.mcz

Lauren P drurowin at gmail.com
Mon Nov 28 16:09:40 UTC 2022


List,

Could we flag #breaking the way we flag #deprecated?

I think we should hold off deleting the old implementation for at least one
version... Is Squeak's debugger advanced enough to run the old code during
the transition period?

I was thinking #breaking:legacy: or similar to invoke the old
implementation. User flexibility to not need to debug someone else's
library, yaknow?

On Mon, Nov 28, 2022, 08:21 Jakob Reschke <jakres+squeak at gmail.com> wrote:

> Hi Christoph,
>
> Question to present you: do you have any means to definitively retrieve
> this note when you or anyone else actually writes the release notes? ;-)
>
> If there is a practical means to do so, maybe initialize these
> release notes right now and already write it down.
>
> Kind regards,
> Jakob
>
>
> Am Mo., 28. Nov. 2022 um 16:10 Uhr schrieb <
> christoph.thiede at student.hpi.uni-potsdam.de>:
>
>> Note for future self: This is a breaking change that should be documented
>> in the next release notes. :-)
>>
>> Best,
>> Christoph
>>
>> On 2022-09-06T16:03:35+00:00, commits at source.squeak.org wrote:
>>
>> > David T. Lewis uploaded a new version of Chronology-Core to project The
>> Trunk:
>> > http://source.squeak.org/trunk/Chronology-Core-dtl.80.mcz
>> >
>> > ==================== Summary ====================
>> >
>> > Name: Chronology-Core-dtl.80
>> > Author: dtl
>> > Time: 19 May 2022, 12:03:05.720962 pm
>> > UUID: 1b1b97c4-bc35-408d-b548-f0d0376a0808
>> > Ancestors: Chronology-Core-dtl.79
>> >
>> > Change DateAndTime>>offset: to be compliant with the ANSI draft spec.
>> The offset: method should answer an instance equivalent to the receiver,
>> where equivalent means having the same UTC time.
>> >
>> > Let #offset: adopt the prior behavior of #utcOffset: and let
>> #utcOffset: be a compatibility synonym for #offset:. Add #asLocalAt: to the
>> squeak protocol and let it implement the prior behavior of #offset: Change
>> existing code and tests to use #asLocalAt: but otherwise retain existing
>> behavior.
>> >
>> > Issue reported at
>> https://github.com/squeak-smalltalk/squeak-object-memory/issues/23
>> >
>> > =============== Diff against Chronology-Core-dtl.79 ===============
>> >
>> > Item was added:
>> > + ----- Method: DateAndTime>>asLocalAt: (in category 'squeak protocol')
>> -----
>> > + asLocalAt: anOffset
>> > +     "Answer a DateAndTime for a different time zone offset that has
>> the same
>> > +     year, month, day, hour, minute, and second as this instance, and
>> with
>> > +     printString that matches except for time zone offset."
>> > +
>> > +     | newOffset newMicros |
>> > +     newOffset := anOffset asDuration asSeconds.
>> > +     newMicros := localOffsetSeconds - newOffset * 1000000 +
>> utcMicroseconds.
>> > +     ^ self class utcMicroseconds: newMicros offset: newOffset
>> > + !
>> >
>> > Item was changed:
>> >   ----- Method: DateAndTime>>offset: (in category 'ansi protocol') -----
>> >   offset: anOffset
>> > +     "Answer a <DateAndTime> equivalent to the receiver but with its
>> local time
>> > +     being offset from UTC by offset.
>> > -     "Answer a DateAndTime for a different time zone offset that has
>> the same
>> > -     year, month, day, hour, minute, and second as this instance, and
>> with
>> > -     printString that matches except for time zone offset."
>> >
>> > +     See asLocalAt: for the earlier behavior of this method."
>> > +
>> > +     ^ self class
>> > +             utcMicroseconds: utcMicroseconds
>> > +             offset: anOffset asDuration asSeconds!
>> > -     | newOffset newMicros |
>> > -     newOffset := anOffset asDuration asSeconds.
>> > -     newMicros := localOffsetSeconds - newOffset * 1000000 +
>> utcMicroseconds.
>> > -     ^ self class utcMicroseconds: newMicros offset: newOffset
>> > - !
>> >
>> > Item was changed:
>> >   ----- Method: DateAndTime>>utcOffset: (in category 'squeak protocol')
>> -----
>> >   utcOffset: anOffset
>> > +     "Compatiblity. Answer a DateAndTime equivalent to the receiver
>> but offset from UTC by anOffset."
>> > +
>> > +     ^ self offset: anOffset!
>> > -     "Answer a DateAndTime equivalent to the receiver but offset from
>> UTC by anOffset"
>> > -     ^ self class
>> > -             utcMicroseconds: utcMicroseconds
>> > -             offset: anOffset asDuration asSeconds!
>> >
>> > Item was changed:
>> >   ----- Method: Timespan class>>current (in category 'squeak protocol')
>> -----
>> >   current
>> > +     ^ self starting: (DateAndTime now asLocalAt: self defaultOffset)!
>> > -     ^ self starting: (DateAndTime now offset: self defaultOffset)!
>> >
>> >
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20221128/69022550/attachment.html>


More information about the Squeak-dev mailing list