Sunday, October 14, 2007

Cohatoe 0.6 preview

Here comes another step towards the 1.0 release version of Cohatoe. This one has taken much longer than I had hoped, and I'm also somewhat running out of time for today, so I just give you the 'official changelog'. There'll be more soon.

Have fun :-)

Changes between 0.6 and 0.5

  • A binary version of the Cohatoe API against which the Haskell server executable was compiled is delivered with the Cohatoe server core plugin, and it is provided to the hs-plugins library when object code is loaded and when source code is compiled. This removes the requirement that the user must have the cohatoe-api package installed in addition to their GHC installation.
  • The Cohatoe API package (the GHC package against which Haskell code for Cohatoe-based Eclipse plugins must be compiled) is now finalized as version 1.0.0. The reason for this is mostly to avoid complications when versions are continuously updated: the .hi files that must be provided for hs-plugins to load the object code contain the versions of package dependencies, and thus fail to load if only a version of the API with a newer version number is available. On the other hand, the API doesn't change at all (apart from the version number itself), so it makes sense to keep the version number stable. There remains a minimal risk that the API must be changed again before the release, in which case some early adopters would possibly have to recompile. (But this is very unlikely.)
  • Fixed a bug in locating the Haskell server executable: when multiple platform-specific fragments of the Cohatoe server core plugin were present, an arbitrary executable was picked.
  • The function factory in the CohatoeServer singleton is now generic (in the Java sense, i.e. has a type parameter. This adds some compile-time typesafety and removes the need for some casts.
  • The Cohatoe development tools (Cohatoe SDK) contain now a Cohatoe project type that can be toggled via a context menu entry on project resources in the workspace. Adding the Cohatoe nature means that the Eclipse autobuild runs over Cohatoe projects and makes checks and re-compiles the object code for Cohatoe extensions. This feature is still experimental.
  • Started to write developer documentation; in particular, there is now a Plug-In Developer's Guide that describes the Cohatoe SDK tooling, and there are also some context help entries for the Cohatoe extension wizard.
  • Added an installation tester application to the SDK. This is a small, headless standalone application that runs a Cohatoe extension in order to check whether all pre-requisites in an installation are there for running Cohatoe-based extensions.

No comments: