Posted By: Sylvain Joyeux
Date: 2007-04-01 07:26
Summary: utilrb 1.0
Project: Utilrb
utilrb version 1.0 has been released!
== What is Utilrb ?
Utilrb is yet another Ruby toolkit, in the spirit of facets. It includes all
the standard class extensions I use in my own projects like Genom.rb.
== Utilrb's C extension
Utilrb includes a C extension in ext/. It is optional, but some of the
functionalities will be disabled if it is not present. Trying to require
a file in which there is a C-only feature will yield a warning on STDOUT.
* some features have a Ruby version, but a C version is provided for
performance:
- Enumerable#each_uniq
* some features are C-only
- ValueSet class
- Kernel#swap!
Changes:
=== Version 1.0
Bumped version number because of incompatible changes. Make it 1.0 since
having 0. version numbers for this kind of library is completely meaningless
* incompatible changes:
- Enumerable#+ acts on too many objects. Define it only on Enumerable::Enumerator
- remove automatic convertion into ValueSet for methods which were doing it
- removed Queue#get: fastthread is now the preferred threading library in
Ruby 1.8.6, so Queue#get cannot be implemented anymore
* new features:
- PkgConfig class
- define Proc#same_body?, Proc#file and Proc#line
- Module#attr_predicate
- 'since', 'until' and block parameters for Exception#full_message
- ValueSet#intersects? (more efficient than checking that the intersection
is empty)
* changes and fixes:
- properly handle singleton classes in has_ancestor?
- properly handle recursion in ValueSet#to_s and Array#to_s
- add the 'setup' task on the Rakefile to build the C extension
- make Module#has_ancestor? work event if the C extension is not built |
|