## 3.1 Changes in MOGUL and ozmake

### 3.1.1 Support for multiple package formats

A serious issue for the 1.3.0 release was that `ozmake` packages produced for 1.2.5 and for 1.3.0 where not compatible. The MOGUL infrastructure was revised and extended to transparently provide support for both. Packages contributed in one format are now automatically also converted and made available in the other format. `ozmake` now uses Mozart version-specific areas to install packages so that you can have both 1.2.* and 1.3.* versions of Mozart installed on your system. Furthermore, `ozmake` has been modified to download packages from the version-specific area of MOGUL appropriate for the version of Mozart that you are running. Unfortunately, this means that an old version of `ozmake` will not know that it needs to access an appropriate area; however, you can easily configure it to do so with the following command:

> `ozmake --config=put --archive=http://www.mozart-oz.org/mogul/pkg/1.2.5/source`

After that, `ozmake --install --package mogul:/duchier/select` will once again work as expected, download the named package from the 1.2.5 area in MOGUL and install it on your system.

### 3.1.2 Bug Fixes

A bug which sometimes caused `ozmake` to hang after downloading a package has been fixed. The compiler bug that was responsible was fixed and a workaround was also added to ozmake in case someone compiles it with a compiler that still has the bug.

syntax errors discovered while scanning functors for automatically extracting dependencies are now reported nicely