Hello,

I just released usb-safe-0.4.1:

http://hackage.haskell.org/package/usb-safe-0.4.1

Changes compared to 0.3 (I didn't make an announcement for 0.4):

* Tested with ghc-6.12.1 and base-4.2.0.0.

* It turned out that an Interface can also be regarded as a scarce
resource: it needs to be claimed before use and it needs to be
released when you're done with it. So just as with USB devices I had
to create a new region monad that supported claiming of interfaces. So
now I had two region monads: a DeviceRegion and an InterfaceRegion
which both were implemented exactly the same and supported the exact
same operations. So the next thing I did was to generalize the region
code and put it in its own package: 'regions'. This package will be
announced separately.

* Removed the FilteredEndpoint type. Specific endpoints can now be
retrieved from the alternate directly using: 'getEndpoints'.

* Added missing language extension: OverlappingInstances (The package
was unusable without it)

* Added convenience functions 'setConfigWhich', 'withInterfaceWhich'
and 'setAlternateWhich' for quickly setting the first setting that
satisfies the given predicate on its descriptor.

* Hidden the ReadEndpoint and WriteEndpoint type classes so users
can't write their own instances for it and thereby potentially messing
up my safety guarantees.

* Lots of little refactorings (is that a real word?): documentation
updates, explicit imports of all used symbols, Unicode syntax and
symbols (using the base-unicode-symbols package)

* Finally I packaged up some example code in:
darcs get http://code.haskell.org/~basvandijk/code/usb-safe-examples/

regards,

Bas
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to