4 suggested fixes/enhs for 3.9.1 (was Re: 3.9.1 (was: Re: Preliminary new Yaxo version))

Jason Johnson jason.johnson.081 at gmail.com
Thu Nov 15 19:26:07 UTC 2007


Cool, are these going to be harvested?

On Nov 15, 2007 12:16 PM,  <goran at krampe.se> wrote:
>
> Hi folks!
>
> A few things for possible inclusion, I don't have time right now to
> check if some of these are already included but I think not.
>
> Two of them are nice speedups (time and printing SmallIntegers), the
> other one is a simple addition of behavior (parsing dates) that I wrote
> as a reaction to a post on the beginners list a while back. Oh, and I
> also added a fix for SMTPClient - well, two rolled into one changeset
> actually - harvested from the Gjallar project.
>
> I consider 6513 to be trivial to add (just added behavior - can't break
> stuff), 6512 seems trivial too (easy to verify), 4669 should be green
> with all Date/Time tests and has been recommended for inclusion earlier,
> but perhaps someone else did something in that area that has made it
> obsolete (Keith?), I don't recall. 6768 also seems easy to include, and
> it has been battle tested in Gjallar.
>
> regards, Göran
>
> -----------------------------------------
> http://bugs.squeak.org/view.php?id=6512
>
> Much faster printString (and thus also asString) for SmallIntegers:
> One override of #printString for SmallInteger and a new method for
> counting digits in base 10. This makes #printString for SmallIntegers
> more than 4 times faster than before.
> -----------------------------------------
> http://bugs.squeak.org/view.php?id=6513
>
>          Read a Date from the stream based on the pattern which can include
> the tokens:
>
>         y = A year with 1-n digits
>         yy = A year with 2 digits
>         yyyy = A year with 4 digits
>         m = A month with 1-n digits
>         mm = A month with 2 digits
>         d = A day with 1-n digits
>         dd = A day with 2 digits
>
>     ...and any other Strings inbetween. Representing $y, $m and $d is
> done using
>     \y, \m and \d and slash itself with \\. Simple example patterns:
>
>         'yyyy-mm-dd'
>         'yyyymmdd'
>         'yy.mm.dd'
>         'y-m-d'
>
>     A year given using only two decimals is considered to be >2000.
> --------------------------------------------
> http://bugs.squeak.org/view.php?id=4669
>
> Ok, so we were trying to figure out why our logger in Gjallar spent so
> much time in creating DateAndTime etc... after looking, tweaking,
> profiling and even some thinking I came up with this "SpeedPack" of
> changes.
>
> I might have broken some subtleties (I don't think I have though) but
> the tests are still green. Glad for any indepth review.
>
> And? Well, the speed differences are quite huge. :) Lots of it comes
> from better Duration instance creation methods and from not going back
> and forth too much between nanos and seconds etc.
>
> "DateAndTime now" is about 6 times faster and "Date today" 4 times. The
> full chronology test suite runs almost 2 times faster. See preamble for
> a do-it that shows this (run before and after installing cs).
>
> So far only tested in 3.8.
> --------------------------------------------
> http://bugs.squeak.org/view.php?id=6768
>
> Added support for EHLO (sending SMTP using Exchange) and fixed a problem
> with authentication - #initiateSession needs to be sent before login
> occurs.
>
>



More information about the Squeak-dev mailing list