[ANN] directory_watcher 0.1.1

A class for watching files within a directory and generating events
when those files change.

The directory watcher operates by scanning a directory at some interval and
generating a list of files based on a user supplied glob pattern. As the file
list changes from one interval to the next, events are generated and
dispatched to registered observers. Three types of events are supported --
added, modified, and removed.

Changes:

Version 0.1.1 / 2006-11-10
  * removed explicit dependency on hoe

Version 0.1.0 / 2006-11-10
  * initial release

TwP

Tim Pease wrote:

A class for watching files within a directory and generating events
when those files change.

The directory watcher operates by scanning a directory at some interval and
generating a list of files based on a user supplied glob pattern. As the file
list changes from one interval to the next, events are generated and
dispatched to registered observers. Three types of events are supported --
added, modified, and removed.

Changes:

Version 0.1.1 / 2006-11-10
  * removed explicit dependency on hoe

Version 0.1.0 / 2006-11-10
  * initial release

TwP

And this would be available from where Tim?

Ken

A class for watching files within a directory and generating events
when those files change.

The directory watcher operates by scanning a directory at some interval
and
generating a list of files based on a user supplied glob pattern. As the
file
list changes from one interval to the next, events are generated and
dispatched to registered observers. Three types of events are supported --
added, modified, and removed.

What were the reasons for creating this, as opposed to an extension of Ara's
dirwatch? http://codeforpeople.com/lib/ruby/dirwatch/

Changes:

···

On 11/13/06, Tim Pease <tim.pease@gmail.com> wrote:

Version 0.1.1 / 2006-11-10
  * removed explicit dependency on hoe

Version 0.1.0 / 2006-11-10
  * initial release

TwP

--
===Tanner Burson===
tanner.burson@gmail.com
http://tannerburson.com <---Might even work one day...

RubyForge

You can find it under the codeforpeople project. Or you can just
download it via gem ...

gem install -r directory_watcher

I really need to drink more coffee before I send out these announcements :confused:

TwP

···

On 11/13/06, Kenosis <kenosis@gmail.com> wrote:

And this would be available from where Tim?

dirwatch is very awesome code. It is a great ruby application that
"manages an sqlite database that mirrors the state of a directory and
then triggers user definable event handlers for certain filesystem
activities such file creation, modification, deletion, etc." It is
meant to be used as its own application.

directory_watcher, on the other hand, is a single ruby class that
sends event objects to other ruby classes when the contents of a
directory change. It is meant to be used within ruby scripts that need
to know about file events.

In summary
dirwatch --> awesome ruby application
directory_watcher --> awesome ruby class

Blessings,
TwP

···

On 11/13/06, Tanner Burson <tanner.burson@gmail.com> wrote:

What were the reasons for creating this, as opposed to an extension of Ara's
dirwatch? http://codeforpeople.com/lib/ruby/dirwatch/

Or just use Hoe and run rake release. Drops an email.txt ready for pasting into your email client of choice.

···

On Nov 13, 2006, at 11:42 AM, Tim Pease wrote:

On 11/13/06, Kenosis <kenosis@gmail.com> wrote:

And this would be available from where Tim?

RubyForge

You can find it under the codeforpeople project. Or you can just
download it via gem ...

gem install -r directory_watcher

I really need to drink more coffee before I send out these announcements :confused:

--
Eric Hodel - drbrain@segment7.net - http://blog.segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com

Eric Hodel wrote:
...

I really need to drink more coffee before I send out these announcements :confused:

Or just use Hoe and run rake release. Drops an email.txt ready for pasting into your email client of choice.

Are you saying rake release has the same effect as drinking coffee?

The feature I'm waiting for is "rake coffee": brews a cup of coffee while hoe runs your entire project for you :slight_smile:

···

On Nov 13, 2006, at 11:42 AM, Tim Pease wrote:

--
       vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407

You're assuming that the developer who wrote the hoe-ified rakefile
remembered to include information about where to find the new release.
That was my error.

I have now modified my rakefile to include the following lines ...

task :checklist do
  print "Did you double check the description? [y|N] "
  response = gets
  unless %r/y(es)?/i =~ response.strip
    raise RuntimeError, "check the description"
  end
  print "Did you double check the version number? [y|N] "
  unless %r/y(es)?/i =~ response.strip
    raise RuntimeError, "check the version number"
  end
  print "Do people know where to download this file? [y|N] "
  unless %r/y(es)?/i =~ response.strip
    raise RuntimeError, "help out the end user"
  end
  print "Have you had enough coffe? [y|N] "
  unless %r/y(es)?/i =~ response.strip
    raise RuntimeError, "go to Peet's"
  end
end

task :release => [:checklist]

···

On 11/13/06, Eric Hodel <drbrain@segment7.net> wrote:

Or just use Hoe and run rake release. Drops an email.txt ready for
pasting into your email client of choice.

okay - __that__ is cool!

can you specify stdout?

   rake release |mail -s traits ruby-talk@ruby-lang.org

that would make those of us that are truely lazy release like wildfire.

-a

···

On Tue, 14 Nov 2006, Eric Hodel wrote:

Or just use Hoe and run rake release. Drops an email.txt ready for pasting into your email client of choice.

--
my religion is very simple. my religion is kindness. -- the dalai lama

$ rake --dry-run release
(in /home/tpease/work/ruby/turn)
** Invoke release (first_time)
** Invoke clean (first_time)
** Invoke clobber_docs (first_time)
** Execute (dry run) clobber_docs
** Invoke clobber_package (first_time)
** Execute (dry run) clobber_package
** Execute (dry run) clean
** Invoke package (first_time)
** Invoke pkg/turn-0.0.0.tgz (first_time)
** Invoke pkg/turn-0.0.0 (first_time)
** Invoke README.txt (first_time, not_needed)
** Invoke lib/turn.rb (first_time, not_needed)
** Execute (dry run) pkg/turn-0.0.0
** Invoke README.txt (not_needed)
** Invoke lib/turn.rb (not_needed)
** Execute (dry run) pkg/turn-0.0.0.tgz
** Invoke gem (first_time)
** Invoke pkg/turn-0.0.0.gem (first_time)
** Invoke pkg (first_time)
** Execute (dry run) pkg
** Invoke README.txt (not_needed)
** Invoke lib/turn.rb (not_needed)
** Execute (dry run) pkg/turn-0.0.0.gem
** Execute (dry run) gem
** Execute (dry run) package
** Execute (dry run) release

No dropping of email.txt :frowning:

Need to use "rake email" :slight_smile:

···

On 11/13/06, Eric Hodel <drbrain@segment7.net> wrote:

Or just use Hoe and run rake release. Drops an email.txt ready for
pasting into your email client of choice.

Eric Hodel wrote:
...

I really need to drink more coffee before I send out these announcements :confused:

Or just use Hoe and run rake release. Drops an email.txt ready for pasting into your email client of choice.

Are you saying rake release has the same effect as drinking coffee?

Hoe is like coffee in that it prevents you from making the mistakes that may result from insufficient caffeine levels.

More of a coffee substitute when releasing packages.

The feature I'm waiting for is "rake coffee": brews a cup of coffee while hoe runs your entire project for you :slight_smile:

Where is ruby-htcpcp?

(http://www.ietf.org/rfc/rfc2324.txt\)

···

On Nov 13, 2006, at 12:39 PM, Joel VanderWerf wrote:

On Nov 13, 2006, at 11:42 AM, Tim Pease wrote:

--
Eric Hodel - drbrain@segment7.net - http://blog.segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com

Sorry, rake announce (which also drops a news item on the project page at RubyForge).

···

On Nov 13, 2006, at 4:59 PM, Tim Pease wrote:

On 11/13/06, Eric Hodel <drbrain@segment7.net> wrote:

Or just use Hoe and run rake release. Drops an email.txt ready for
pasting into your email client of choice.

$ rake --dry-run release

No dropping of email.txt :frowning:

--
Eric Hodel - drbrain@segment7.net - http://blog.segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com

Or just use Hoe and run rake release. Drops an email.txt ready for pasting into your email client of choice.

okay - __that__ is cool!

can you specify stdout?

  rake release |mail -s traits ruby-talk@ruby-lang.org

No. Also, the first line of email.txt is the subject.

that would make those of us that are truely lazy release like wildfire.

A send_email task wouldn't work cross-platform. Not everybody's machines are correctly set up to send email.

···

On Nov 13, 2006, at 4:53 PM, ara.t.howard@noaa.gov wrote:

On Tue, 14 Nov 2006, Eric Hodel wrote:

--
Eric Hodel - drbrain@segment7.net - http://blog.segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com

One implementation that has since been removed.

TwP

···

On 11/13/06, Eric Hodel <drbrain@segment7.net> wrote:

On Nov 13, 2006, at 12:39 PM, Joel VanderWerf wrote:
> Eric Hodel wrote:
>> On Nov 13, 2006, at 11:42 AM, Tim Pease wrote:
> ...
>>> I really need to drink more coffee before I send out these
>>> announcements :confused:
>> Or just use Hoe and run rake release. Drops an email.txt ready
>> for pasting into your email client of choice.
>
> Are you saying rake release has the same effect as drinking coffee?

Hoe is like coffee in that it prevents you from making the mistakes
that may result from insufficient caffeine levels.

More of a coffee substitute when releasing packages.

> The feature I'm waiting for is "rake coffee": brews a cup of coffee
> while hoe runs your entire project for you :slight_smile:

Where is ruby-htcpcp?

(http://www.ietf.org/rfc/rfc2324.txt\)

sure, but

   cmd = "rake release|mail -s #{ the_subject } ruby-talk@ruby-lang.org"

   system cmd or warn "you system is wonky"

might be ok :wink:

-a

···

On Wed, 15 Nov 2006, Eric Hodel wrote:

On Nov 13, 2006, at 4:53 PM, ara.t.howard@noaa.gov wrote:

On Tue, 14 Nov 2006, Eric Hodel wrote:

Or just use Hoe and run rake release. Drops an email.txt ready for pasting into your email client of choice.

okay - __that__ is cool!

can you specify stdout?

  rake release |mail -s traits ruby-talk@ruby-lang.org

No. Also, the first line of email.txt is the subject.

that would make those of us that are truely lazy release like wildfire.

A send_email task wouldn't work cross-platform. Not everybody's machines are correctly set up to send email.

--
my religion is very simple. my religion is kindness. -- the dalai lama

Or just use Hoe and run rake release. Drops an email.txt ready for pasting into your email client of choice.

okay - __that__ is cool!
can you specify stdout?
  rake release |mail -s traits ruby-talk@ruby-lang.org

No. Also, the first line of email.txt is the subject.

that would make those of us that are truely lazy release like wildfire.

A send_email task wouldn't work cross-platform. Not everybody's machines are correctly set up to send email.

sure, but

  cmd = "rake release|mail -s #{ the_subject } ruby-talk@ruby-lang.org"

  system cmd or warn "you system is wonky"

Well, it might just send mail into the bit-bucket:

$ mail drbrain@segment7.net
test
EOT
$ echo $?
0
$ mail
Mail version 8.1 6/6/93. Type ? for help.
"/var/mail/drbrain": 1 message 1 new
>N 1 MAILER-DAEMON@pride- Wed Nov 15 00:43 69/2492 "Undelivered Mail Retu"
&

might be ok :wink:

If you can fix that, we await your patch at:

http://rubyforge.org/tracker/?func=add&group_id=1513&atid=5923

:wink:

···

On Nov 14, 2006, at 2:02 PM, ara.t.howard@noaa.gov wrote:

On Wed, 15 Nov 2006, Eric Hodel wrote:

On Nov 13, 2006, at 4:53 PM, ara.t.howard@noaa.gov wrote:

On Tue, 14 Nov 2006, Eric Hodel wrote:

Subject: test

--
Eric Hodel - drbrain@segment7.net - http://blog.segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com