# HookR version 1.0.0 released

**URL:** <https://www.ruby-forum.com/t/hookr-version-1-0-0-released/154770>\
**Category:** Ruby\
**Created:** [December 3, 2008, 7:05pm UTC](https://www.ruby-forum.com/t/hookr-version-1-0-0-released/154770 "2008-12-03T19:05:28Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![avdi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/c6cbf5/32.png) [@avdi](https://www.ruby-forum.com/u/avdi)\
**Post date:** [December 3, 2008, 7:05pm UTC](https://www.ruby-forum.com/t/hookr-version-1-0-0-released/154770/1 "2008-12-03T19:05:28Z")

</div>

HookR version 1.0.0  
by Avdi G.  
[http://hookr.rubyforge.org](http://hookr.rubyforge.org)

== DESCRIPTION

HookR is a publish/subscribe callback hook facility for Ruby.

== CHANGES

- 1 major enhancement
  - Birthday!

== SYNOPSIS:

require ‘rubygems’  
require ‘hookr’

class ZeroWing  
include HookR::Hooks  
define\_hook :we\_get\_signal, :message

```
def start_game
  execute_hook(:we_get_signal, "How are you gentlemen?")
end

def bomb(event, message)
  puts "somebody set us up the bomb!"
end

we_get_signal do |event, message|
  puts "Main screen turn on!"
  puts "Cats: #{message}"
end

we_get_signal :bomb

```

end

zw = ZeroWing.new  
zw.we\_get\_signal do  
puts “Take off every zig!”  
end

zw.start\_game

# \>\> Main screen turn on!

# \>\> Cats: How are you gentlemen?

# \>\> somebody set us up the bomb!

# \>\> Take off every zig!

–  
Avdi

Home: [http://avdi.org](http://avdi.org)  
Developer Blog: [Avdi Grimm, Code Cleric](http://avdi.org/devblog/)  
Twitter: [http://twitter.com/avdi](http://twitter.com/avdi)  
Journal: [http://avdi.livejournal.com](http://avdi.livejournal.com)

---

<div class="post-metadata">

**Author:** ![avdi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/c6cbf5/32.png) [@avdi](https://www.ruby-forum.com/u/avdi)\
**Post date:** [December 3, 2008, 9:01pm UTC](https://www.ruby-forum.com/t/hookr-version-1-0-0-released/154770/2 "2008-12-03T21:01:12Z")

</div>

On Dec 3, 2008, at 11:59 AM, Avdi G. wrote:

> == DESCRIPTION
> 
> HookR is a publish/subscribe callback hook facility for Ruby.

Great project name. The jokes on the site alone are worth it. 🙂

Seriously, it’s a great idea too. I wish we would see things like  
ActiveRecord’s finder system move to something like this, instead of  
just encouraging all plugins to alias and rewrite. Nice work.

James Edward G. II

---

<div class="post-metadata">

**Author:** ![avdi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/c6cbf5/32.png) [@avdi](https://www.ruby-forum.com/u/avdi)\
**Post date:** [December 3, 2008, 9:07pm UTC](https://www.ruby-forum.com/t/hookr-version-1-0-0-released/154770/3 "2008-12-03T21:07:39Z")

</div>

On Wed, Dec 3, 2008 at 12:59 PM, Avdi G. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> HookR version 1.0.0  
> by Avdi G.  
> [http://hookr.rubyforge.org](http://hookr.rubyforge.org)
> 
> == DESCRIPTION
> 
> HookR is a publish/subscribe callback hook facility for Ruby.

Just had fun playing with this. However, it seems that HookR doesn’t  
specify its gem dependencies which makes it a bit of a pain to install  
via RubyGems, and then requires its development dependencies to be  
installed (such as cucumber) for it to run.

Thanks for this project, it’s neat stuff!

-greg

---

<div class="post-metadata">

**Author:** ![avdi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/c6cbf5/32.png) [@avdi](https://www.ruby-forum.com/u/avdi)\
**Post date:** [December 3, 2008, 9:18pm UTC](https://www.ruby-forum.com/t/hookr-version-1-0-0-released/154770/4 "2008-12-03T21:18:51Z")

</div>

On Wed, Dec 3, 2008 at 3:01 PM, Gregory B.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Just had fun playing with this. However, it seems that HookR doesn’t  
> specify its gem dependencies which makes it a bit of a pain to install  
> via RubyGems, and then requires its development dependencies to be  
> installed (such as cucumber) for it to run.

Oops. I’ll fix this ASAP. Also, Cucumber shouldn’t be needed at all

- I think that might be part of the elaborate developer dependency  
network introduced by Newgem, which I used to create the FailFast gem.  
That’s part of the reason I switched to using Mr. Bones when I made  
HookR into a Gem.

–  
Avdi

Home: [http://avdi.org](http://avdi.org)  
Developer Blog: [Avdi Grimm, Code Cleric](http://avdi.org/devblog/)  
Twitter: [http://twitter.com/avdi](http://twitter.com/avdi)  
Journal: [http://avdi.livejournal.com](http://avdi.livejournal.com)
