# Facets 1.4

**URL:** <https://www.ruby-forum.com/t/facets-1-4/97224>\
**Category:** Ruby\
**Created:** [July 5, 2006, 7:36pm UTC](https://www.ruby-forum.com/t/facets-1-4/97224 "2006-07-05T19:36:29Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![unknown](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/u/4bbf92/32.png) [@unknown](https://www.ruby-forum.com/u/unknown)\
**Post date:** [July 5, 2006, 7:36pm UTC](https://www.ruby-forum.com/t/facets-1-4/97224/1 "2006-07-05T19:36:29Z")

</div>

A N N O U N C I N G

```
                        Facets 1.4

             ALL YOUR BASE ARE BELONG TO RUBY!

```

= ABSTRACT

Facets is a large collection of core extension methods and module  
additions for the Ruby programming language. The core extensions are  
unique by virtue of thier atomicity. Methods are stored in their own  
files, allowing for highly granular control of requirements. The  
modules include a variety of useful classes, mixins and  
microframeworks, from the Functor to a full-blown SI units system.

= LATEST NEWS

The 1.4 series of Facets is now official as of v1.4.5.

There are have been quite a few improvements since the last offical  
release. The single biggest change is actually completely behind the  
scenes. Darcs is now being usd as the revision control system. Darcs  
really is a dream to use and should make it easier for others to  
contribute to the project. (I only wish Rubyforge and Tracs would gear  
up their Darcs support.)

Here are the other major highlights of 1.4 series:

- Added nilclass/status which allows a message to be passed through a  
failure chain.

- Added enumerable/cascade, a cascade a list of actions on each element  
of an enumerable. Thanks to Sean O’Halpin for this.

- Removed hash/keys\_to\_iv because it is a poor name. Since the  
alternative of ‘keys\_to\_instance\_variables’ conveys the wrong idea, we  
simply deprecated it in favor of the Rails compatible #variablize\_keys.

- Fixed bug in BasicObject# **self**.

- Addedd Cookie, HTTP and HTTPAccess of Hiroshi N.'s  
httpaccess2.rb library. Cookie has been moved to Web namespace.

- OpenObject’s **get** and **set** methods have been changed to  
**fetch** and **store** to correspond to the Hash methods.

- Added OpenCascade, which is like OpenObject but chains access.

- Included MenTaLguY’s lazy.rb which include’s Future and Promise  
classes. Cool lib!

- Created task.rb, which provides a Rake interface compatible task  
system, but that can be used in any code. Instead of defining tasks  
globally it defines them as methods of the current module or class.  
This makes the “task pattern” reusable.

- Improved Hash#traverse (it now does all traversing before yielding).

- kernel/me, kernel/methodname and kernel/method\_name have all been  
deprecated in favor of 1.9’s kernel/ **method** and kernel/ **callee**  
(but why more \_\_ methods if you don’t like them, matz?)

- Console::Application is deprecated as an alias for Console::Command.

- Console::Command now supports run-on flags (eg. -xvzf).

- More’s classinherit.rb has been removed, and classmethods.rb will  
eventaully be deprecated as well. You should transition all uses of  
these to the core method module/class\_extension.

- Updated tuple.rb so that when a string is converted to a Tuple  
(#to\_t) the values wll be made integers if they are composed of only  
numbers. If you need all strings you can use a block since the block  
bypasses auto coerce, eg. to\_t{ |v| v }.

- If anyone missed the changes from 1.3 the main of them were the  
inclusion of xoxo.rb, json.rb and rtals.rb; the moving of the cattr  
methods from module/ to class/. The mattr methods are still being  
reconsidered (They were aliases for cattr.); and adding zimba.tm’s  
string/modulize, pathize and methodize methods.

I see the gleen in your eye 😉 Enjoy!

= RELATED LINKS

[http://facets.rubyforge.org](http://facets.rubyforge.org)

```
                       Generated by
                    ___
                   | _ \ _____ _ _ __
                   | ) -_) _` | '_ \
                   |_|_\ ___\__ ,_| .__)
                                |_|

               The Ruby Project Assistant

         Do you Ruby? (http://www.ruby-lang.org)

```
