<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div dir="ltr"><meta http-equiv="content-type" content="text/html; charset=utf-8"><div dir="ltr"><br></div><div dir="ltr"><blockquote type="cite">On Jul 22, 2020, at 12:49 AM, Marcel Taeumel <marcel.taeumel@hpi.de> wrote:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
                                        
                                        
                                            
                                        
                                        
                                        Hi Levente.<div><br></div><div>> <span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">I'm thinking about checking the VM version in the preamble of the package</span></div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">> and raising a Warning when it clearly lacks the required updates.</span><br style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">> Users can still continute with a Warning or terminate the update process,</span><br style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">> while cli tools will act as if an error had occured.</span><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">+1</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">A one-liner would be nice. The warning should also (roughly) point to the location of the new VM for download.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">MCMcmUpdater checkVM: </span><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">202003021730. "and newer"</span></span></div></div></div></blockquote><div><br></div>I wrote it like this:<div><span style="-webkit-text-size-adjust: auto;"><br></span></div><div><span style="-webkit-text-size-adjust: auto; background-color: rgb(255, 255, 255);"> "Use of the Spur FloatArray>>at:[put:] prims requires at least VMMaker.oscog.2778"</span></div><div><span style="-webkit-text-size-adjust: auto; background-color: rgb(255, 255, 255);"><br></span></div><div><span style="-webkit-text-size-adjust: auto;">Smalltalk vmVMMakerVersion < 2778 ifTrue:</span><div><span style="-webkit-text-size-adjust: auto;">    [Warning signal: 'This virtual machine is too old to support correct versions of the FloatArray>>at:[put:] primitives 238 and 239.  FloatArray subclasses will not behave correctly and FloatArray[64]Test tests will fail.  Please upgrade your VM.  You may continue and upgrade later or abort and upgrade now.']!</span></div><div><span style="font-size: 20px; -webkit-text-size-adjust: auto;"><br></span><blockquote type="cite"><div dir="ltr"><div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000"><div><span style="font-family: Arial, Helvetica, sans-serif; font-size: 13px;">Best,</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Marcel</span></div><div class="mb_sig"></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 21.07.2020 20:21:39 schrieb Levente Uzonyi <leves@caesar.elte.hu>:</p><div style="font-family:Arial,Helvetica,sans-serif">Hi Eliot,
<br>
<br>On Mon, 20 Jul 2020, Eliot Miranda wrote:
<br>
<br>> Hi All,
<br>>     I've just found and fixed a VM bug in an as-yet-unpublished pair of primitives that replace FloatArrayPlugin>>primitiveAt[Put] and Float64ArrayPlugin>>primitiveAt[Put].  The new replacement, which allows two methods
<br>> (at:[put:]) in FloatArray to relace four methods (Float32Array>>at:[put:] & Float64Array>>at:[put:]) are some 5 to 10 times faster than the plugin methods.  The issue is when to publish the corrections to trunk.
<br>> Since the existing VM is broken I don't want to simply push to trunk and have people inconvenienced by a sudden emergence of failures in the FoatArrayTests.  However, I do want to push the corrections soon, because they're a
<br>> substantial improvement.  So the question is how long should I wait?
<br>> 
<br>> Is it OK if I push the fixes to FloatArray and subclasses in a week?  Do people using trunk keep an eye on the CI builds and upgrade, or would they appreciate a heads up?  If so, as soon as the AppVeyor builds succeed
<br>> for CogVM source as per VMMaker.oscog-eem.2778, I'll let you know and ask that you upgrade your VM.
<br>
<br>I think most people don't update their VMs often. I still tend to fire 
<br>up the one shipped with the 5.3 release. So, IMO the question is not how 
<br>long to wait but what to do when things are about to break.
<br>I presume that without updating the VM, the image would not work properly.
<br>So, I think the best would be if the user were warned during the update 
<br>if the VM would be incompatible with the changes.
<br>I'm thinking about checking the VM version in the preamble of the package 
<br>and raising a Warning when it clearly lacks the required updates.
<br>Users can still continute with a Warning or terminate the update process, 
<br>while cli tools will act as if an error had occured.
<br>
<br>
<br>Levente
<br>
<br>> _,,,^..^,,,_
<br>> best, Eliot
<br>> 
<br>><br></div></blockquote></div><span></span><br></div></blockquote></div></div></div></body></html>