<div dir="ltr"><div><div><div><div><div><div><div><div><div>Hi Eliot,<br></div>the VMMaker changes relative to LLP64 are so far really tiny: just the change of CCodeGenerator for &gt;&gt; and the memcpy.<br></div>I think it&#39;s easy enough to revert and test if it changes anything to stability.<br><br></div>One bad side of this kind of CCodeGenerator change is that it generates thousands of diff preventing any manual review of generated source code changes.<br></div>IMO, this should be separated in own commit so that we can bissect.<br></div>More generally, we should generate source in a more atomic fashion (for each feature/fix).<br>The infrastructure progress (automated tests), and the way to declare a VM stable (whatever it is) are there to enable this process.<br></div><br></div>One possibility would be to use VMMaker branches coupled to git branches like I did for LLP64.<br></div>Once we have VM smoke tests + VM simulator tests to improve confidence level, you could merge the VMMaker branch with MC, merge the necessary platforms changes with git (resolve all *src conflicts as using COG branch), regenerate the sources, and commit. I&#39;m pretty sure that a pair of MC+git gurus could script that procedure.<br><br>If we use such process for each feature, we could integrate several features at once, with so called &quot;octopus&quot; merge.<br>This would be the process nearest to current one: the integrator (you) assemble several features for the next &quot;release&quot; (understand HEAD commit).<br></div><div>This may raise several questions about rebasing or merging changes, but it&#39;s worth thinking about it.<br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-08-06 11:00 GMT+02:00 Tobias Pape <span dir="ltr">&lt;<a href="mailto:Das.Linux@gmx.de" target="_blank">Das.Linux@gmx.de</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
On 06.08.2016, at 08:46, Tim Felgentreff &lt;<a href="mailto:timfelgentreff@gmail.com">timfelgentreff@gmail.com</a>&gt; wrote:<br>
<br>
&gt; Hi,<br>
&gt;<br>
&gt; I agree that only reasonably stable code should go into the Cog branch. But  how do we ensure that? I&#39;m against going with someone&#39;s &quot;gut feeling&quot; for this, instead I think we really do need some tests. Right now the only &quot;test&quot; we run is that the VM compiles in different configurations on different platforms. We really need proper stress tests, in-Image as well as out-of-Image. There are many tests in Squeak, for example, that have nothing to do with the system and only test VM specifics (that are subject to change anyway, like testing that Floats are boxed). Personally I would think we should move these into the VM project and run them on Travis. Additionally we need an easy way to add a test when a new crash is discovered to guard ourselves against regressions.<br>
&gt;<br>
&gt; I believe that with more people making contributions (which was one of the reasons for the github move) it just becomes infeasible to always test branches manually.<br>
<br>
Nothing to add, just what he says.<br>
<br>
Best regards<br>
<span class="HOEnZb"><font color="#888888">        -Tobias<br>
<br>
</font></span></blockquote></div><br></div>