Version 0.1.5
-------------

- added upf-list-classes tool
- members of C++ class generated for union are now private
- libupf is now seperated into libupf_impl-$(VERSION).so (contains C++ code)
  and libupf.so.0 (thin layer that loads the former) on Unix; this prevents
  symbol conflicts between the main program and libupf
- fixed proxies for interfaces that use multiple inheritance
- environment variable UPF_LIBDIR can now be used to override location of
  standard modules on Unix; previously only $(prefix)/lib/upf was searched


Version 0.1.4
-------------

- added convenience constructor to generated C++ structures
- added upf::create(std::string) to C++ API
- upf::Ptr<T> copy ctor and operator= were modified to allow
  assignments from any upf::Ptr<Y>, not only upf::Ptr<IObject> and
  upf::Ptr<T> (doesn't work with Visual C++ compiler)
- added UPF_ON_LOAD and UPF_ON_UNLOAD macros that can be used to
  initialize/shutdown DLL modules loaded at runtime
- added UPF_REQUIRES_CLASS for dependency checking


Version 0.1.3
-------------

- completed typeinfo generator to cover all IDL types
- added new tool, upf-typeinf to generate UPF type information file
- fixed bug in C++ sequence serialization code
- removed "convenience operators" from generated C++ union types
  (didn't work when multiple union cases had same type) and replaced
  them with the approach described in IDL-to-C++ spec
- (Linux) added RPM .spec file
- upgraded IDL parser to omniidl from omniORB 4.0
- (Win32) fixed upf-idl to work correctly when to TMP was set to
  a path containing spaces


Version 0.1.2
-------------

- C++ wrapper for union type now have convenience operators
- added services aka monikers (IServiceManager)
- added error logging (ILog)


Version 0.1.1
-------------

- added constants support
- added union support
- added #pragma cxx_include
- added #pragma single_impl


Version 0.1.0
-------------

- first version
