[Vm-dev] Alien: separate core, tests and win32 into own packages

Torsten Bergmann astares at gmx.de
Fri Mar 2 10:51:30 UTC 2018


as already discussed it would be good to have the packages in Alien more modular 
(separate the tests, separate platform dependent part from core functionality). 
Also this would allow to use Alien core functionality in more minimal Smalltalk images 
where there is no SUnit or windows support needed or wanted. 

The issue was already discussed in January and thankfully Eliot as the engineer behind Alien 
gave his OK with the request that the repo is kept and version stamps are preserved. 
I now was able to devote some minutes to this task.

For all to reproduce what was done:
The most recent valid version found in squeaksource.com/Alien from Eliot 
was "Alien-eem.44.mcz" from 23 February 2018.

This package is now split into the following packages/MCZ's:

        - Alien-Core-tbn.100.mcz 
        - Alien-Tests-Core-tbn.100.mcz 
        - Alien-Win32-tbn.100.mcz 

based on exactly this latest version from Eliot.

You will find them in the Alien repository: http://squeaksource.com/Alien.html

With this the "Alien" MCZ package line is now deprecated.

Please continue to contribute and develop on 
 - "Alien-Core" for core functionality
 - "Alien-Tests-Core" for tests on core functionality
 - "Alien-Win32" for windows specific functionality
to move Alien forward.

Side note:
The switch to the high version number 100 was done to avoid confusion 
as there were already "Alien-Core", "Alien-Tests" and "Alien-Win32" 
in squeaksource.com/Alien back from 2009 to 2012. This also allows to 
continue to show the most recent version on top in Monticello.

I clearly documented the split as well as the reasoning behind using 
version number 100 onwards in the comments of the new packages.

 - I created an Alien-tbn.45.mcz with the change to empty out the
   now deprecated "Alien-xxx.yy.mcz" package line and mention in the
   comment to now use the new modular packages
- I double checked the loading of the modular packages in a fresh Squeak 
- I also double checked that the version information on authors and timestamp
  is kept 
- as this was only a repackaging activity no code was changed and the 118 tests 
  are still green

I did the repackaging very carefully and verified proper loading as well. What I can not
do is to change all the places where it is used.

I hope you all (and especially Eliot) can support this in doing the necessary changes on 
Open Smalltalk VM - maybe some VMMaker or private loading scripts need to be adopted.

Primarily it is now necessary to load the 3 packages "Alien-Core", "Alien-Tests-Core" and
"Alien-Win32" on all places where previously "Alien" package/MCZ was loaded.

If you need to change config specs be aware that it would make sense to have "Alien-Tests-Core" 
and "Alien-Win32" being dependent on "Alien-Core". 


More information about the Vm-dev mailing list