[ANN] OS-Windows 2.1 project updated for Pharo 5 (NB to UFFI transition)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[ANN] OS-Windows 2.1 project updated for Pharo 5 (NB to UFFI transition)

Torsten Bergmann
Hi,

the "OS-Windows" package [1] from my "OS-xxx" Pharo goodies series [2] is providing better access
to native Windows APIs and wraps Windows functionality for easier access/coding in Pharo (browser, console,
processes, shell, window, GDI, ...). Some of you may know or use this package already.

Up to the last provided stable version for Pharo 4 all my code and bindings were based on "old"
NativeBoost (NB). With the transition away from NB over to new UniversalFFI (UFFI) within Pharo 5
it was necessary to port/migrate the code over to UFFI for all the OS-xxx projects.  

Work of the Windows port started when UFFI was still shaky (December) and in a separate repo [3].
It was not easy in the beginning, some headbanging against the wall and feeling like a crash test
dummy was involved - basing the port on early UFFI code and without much documentation.
Several UFFI issues had to be discussed with Esteban Lorenzano in private conversations on #slack: often
leading to some updated UFFI versions afterwards and an updated worklog of Esteban [4].

In the Pharo spirit "step by step" all of this got analyzed, fixed, renamed, improved and integrated into
latest Pharo 5 in the last months. Esteban was VERY VERY supportive and adopted UFFI for all the needs!  

    ONCE AGAIN: A BIG THANK YOU, ESTEBAN!!!

Long story short: I can now release "OS-Windows" again into the wild for Pharo 5: fully compatible,
                  again with cleaner code, some more functionality and even more tests (from 77 to now 81)

As ever it is easy to access: open spotter in Pharo 5 and load "OSWindows". Full docu is on the project page [1],
the new version is fully compatible to the Pharo 4 version so there was no need to change a single
line in the tutorial. ;)

Have fun
T.

[1] http://www.smalltalkhub.com/#!/~OS/OS-Windows
[2] http://www.smalltalkhub.com/#!/~OS
[3] http://www.smalltalkhub.com/#!/~TorstenBergmann/NOS
[4] http://log.smallworks.eu/