[squeak-dev] Re: Magma (head) doesn't load cleanly into Squeak 4.5

Chris Muller ma.chris.m at gmail.com
Fri Feb 22 02:25:23 UTC 2013


I started to do it but I couldn't gather enough initiative just yet;
partially because I have to finish some other work first but also
because I guess one expectation I have of the CI server is that it
will help me know what part of my code failed (e.g., which test).  The
Magma test suite works for users who simply install and run it
manually in 4.5, so I felt like I was about to spend my afternoon
chasing down something that might be a bug in the CI job and lost my
steam.

If you could you tell me what HDTestReport does in #runPackages: --
Magma and Ma Client Server both use special subclasses of TestSuite
and can only run one way which is:

   MagmaTestCase suite debug

and

  MaClientServerTestCase suite debug

Only running the whole suite that exact way is supported.  I don't
know anyone who runs individual tests anyway -- if a change is made to
a package the entire suite needs to be run.

Can the CI server handle Magma's special needs?


On Thu, Feb 21, 2013 at 10:41 AM, Frank Shearar <frank.shearar at gmail.com> wrote:
> Sure. It's probably easiest if you just run the squeak-ci tests, which
> will set up an environment for you with the right VM and such. Given
> that CI runs on a Linux, you'll probably want to do the same.
> * git clone git at github.com:frankshearar/squeak-ci.git
> * cd squeak-ci
> * ./run-test.sh Magma
>
> HDTestReport is just a thing that runs a test suite consisting of all
> TestCase subclasses within a particular package, and produces JUnit
> style XML reports of the test run.
>
> frank
>
> On 21 February 2013 16:27, Chris Muller <asqueaker at gmail.com> wrote:
>> I don't know what HDTestReport is -- do you know any way I can
>> recreate the crash?
>>
>> On Thu, Feb 21, 2013 at 8:04 AM, Frank Shearar <frank.shearar at gmail.com> wrote:
>>> Currently I have this:
>>>
>>> Installer squeakmap
>>>     update;
>>>     install: 'Magma (head)'.
>>>
>>> HDTestReport runPackages: #('Ma-Collections-Dictionarys'
>>>     'Ma-Collections-Dictionarys-Auto-Tests'
>>>     'Ma-Collections-Tests'
>>>     'Ma-Serializer-Tests-SUnit tests'
>>>     'Ma-Client-Server-Tester-SUnit extensions'
>>>     'Ma-Client-Server-Tester-Tests'
>>>     'WriteBarrier-Tests'
>>>     'Magma-Tester-SUnit tests').
>>>
>>> I do need to use HDTestReport because otherwise I can't generate JUnit
>>> test reports.
>>>
>>> I don't see why I should be able to trigger a crash - it looks like an
>>> infinite recursion leading to stack overflow? - just by running the
>>> tests though.
>>>
>>> But I haven't made any attempt yet to debug the issue, say by running
>>> only some of the test packages.
>>>
>>> frank
>>>
>>> On 21 February 2013 02:12, Chris Muller <ma.chris.m at gmail.com> wrote:
>>>> Hmm, that's strange; the tests work with the Linux 2678 Cog VM if I
>>>> just install the (head) version from SqueakMap into 4.5.
>>>>
>>>> What expression are you using to kick off the test suite?  It should be:
>>>>
>>>>   MagmaTestCase suite debug
>>>>
>>>> Thanks.
>>>>
>>>> On Wed, Feb 20, 2013 at 11:19 AM, Frank Shearar <frank.shearar at gmail.com> wrote:
>>>>> On 20 February 2013 15:57, Chris Muller <ma.chris.m at gmail.com> wrote:
>>>>>> Thank you Frank, it's fixed.
>>>>>>
>>>>>> If following the guidelines, the (head) release is something that only
>>>>>> needs to be set up once and then, the only time it will ever need to
>>>>>> change again is if the package-structure changes.  That's precisely
>>>>>> what happened with Magma.  Which makes me wonder whether it would be
>>>>>> nice for the CI server to install and run all packages designated for
>>>>>> that Squeak release and send out a notification if either the install
>>>>>> or tests fail.  OR, maybe it could even remove the designation so it
>>>>>> would no longer appear in the "Safely available" list -- I think a
>>>>>> short or even empty list could be better for the community than one
>>>>>> full of stuff that doesn't work..
>>>>>>
>>>>>>  - Chris
>>>>>>
>>>>>> On Wed, Feb 20, 2013 at 8:19 AM, Frank Shearar <frank.shearar at gmail.com> wrote:
>>>>>>> Hi Chris,
>>>>>>>
>>>>>>> I realise Magma (head) isn't actually marked as working in 4.5, but
>>>>>>> 4.5's still close enough to 4.4 that I gave it a go.
>>>>>>>
>>>>>>> I get a Warning that "This package depends on Medley", caused by
>>>>>>> WbMedley and WbMedley >> #collectionsClass.
>>>>>>>
>>>>>>> What's the install script missing?
>>>>>>>
>>>>>>> (Context: I realised I should have written a CI build script for Magma
>>>>>>> ages ago, and wanted to find out Magma's list of test packages by
>>>>>>> loading it in via SqueakMap.)
>>>>>>>
>>>>>>> Thanks,
>>>>>>>
>>>>>>> frank
>>>>>
>>>>> Thanks for the fix, Chris.
>>>>>
>>>>> I now have a build script for you, and a VM crash!:
>>>>> http://build.squeak.org/job/ExternalPackage-Magma/2/console
>>>>>
>>>>> frank
>>>
>>


More information about the Squeak-dev mailing list