[ANN] Duration 0.0.4

Hi,

I'd like to happily introduce Duration, the package for managing
timespan durations. Have you ever been in a situation where you wanted
to print a human-readable representation of a duration, maybe
something like "4 days, 20 minutes and 8 seconds"?

Well, Duration gives you this functionality. I have written a detailed
wiki article at http://wiki.rubyonrails.org/rails/pages/Duration where
you can read about how to install and use Duration.

The current version is 0.0.4 and is quite stable. If you find any
bugs, please email me the bug with a relevant email subject.

Any feature requests should be sent to my email as well, as I am very
interested in to hear and possibly implement what you as the user
would feel would enhance Duration.

Thanks.

···

--
Matt

You mention that it can convert number of days/weeks into months. How do
you deal with the fact that a "month" doesn't have a standard number of
days? Do you do as the Rails extension does by assuming a fixed number, or
some other form of trickery?

···

On 9/28/06, Matthew Harris <shugotenshi@gmail.com> wrote:

Hi,

I'd like to happily introduce Duration, the package for managing
timespan durations. Have you ever been in a situation where you wanted
to print a human-readable representation of a duration, maybe
something like "4 days, 20 minutes and 8 seconds"?

Well, Duration gives you this functionality. I have written a detailed
wiki article at http://wiki.rubyonrails.org/rails/pages/Duration where
you can read about how to install and use Duration.

The current version is 0.0.4 and is quite stable. If you find any
bugs, please email me the bug with a relevant email subject.

Any feature requests should be sent to my email as well, as I am very
interested in to hear and possibly implement what you as the user
would feel would enhance Duration.

Thanks.

--
Matt

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

Since durations are only based on timespans of fixed lengths, they do
not work relatively. So there is no time-detection magic to determine
the days in a given month, because also durations don't distinguish
between what month it is (whether it be January or Feburary).
BigDuration, the class that supports years and months will assume 30
days as 1 month, and 12 months as 1 year.

···

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

On 9/28/06, Matthew Harris <shugotenshi@gmail.com> wrote:
>
> Hi,
>
> I'd like to happily introduce Duration, the package for managing
> timespan durations. Have you ever been in a situation where you wanted
> to print a human-readable representation of a duration, maybe
> something like "4 days, 20 minutes and 8 seconds"?
>
> Well, Duration gives you this functionality. I have written a detailed
> wiki article at http://wiki.rubyonrails.org/rails/pages/Duration where
> you can read about how to install and use Duration.
>
> The current version is 0.0.4 and is quite stable. If you find any
> bugs, please email me the bug with a relevant email subject.
>
> Any feature requests should be sent to my email as well, as I am very
> interested in to hear and possibly implement what you as the user
> would feel would enhance Duration.
>
> Thanks.
>
> --
> Matt

You mention that it can convert number of days/weeks into months. How do
you deal with the fact that a "month" doesn't have a standard number of
days? Do you do as the Rails extension does by assuming a fixed number, or
some other form of trickery?

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

--
Matt

You mention that it can convert number of days/weeks into months. How do
you deal with the fact that a "month" doesn't have a standard number of
days? Do you do as the Rails extension does by assuming a fixed number, or
some other form of trickery?

Since durations are only based on timespans of fixed lengths, they do
not work relatively. So there is no time-detection magic to determine
the days in a given month, because also durations don't distinguish
between what month it is (whether it be January or Feburary).
BigDuration, the class that supports years and months will assume 30
days as 1 month, and 12 months as 1 year.

Just to add a little bit here, in Io, our Duration module doesn't know anything about months at the moment, instead adding up days. It could keep a list holding the number of days in a month (in the case of february, if a leap year is detected, replace the second item in the list (28) with 29). Now that extension is pretty easy, but right now we only keep track of years, days, hours, and so on. You might consider doing something similar. It's fairly straight forward.

Also, out of curiosity, why have two Duration classes? I can't see how BigDuration would be required, perhaps could you elaborate a little?

···

On 06-09-29, at 08:59, Matthew Harris wrote:

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

Matt

--
Jeremy Tregunna
jtregunna@blurgle.ca

Duration and BigDuration are separate because BigDuration
independantly deals with years and months. Duration, when given a year
or a month will automatically change those to the number of weeks. I
wanted to strictly limit Duration to consistent numbers (weeks, days,
hours, minutes, seconds) and BigDuration to the inconsistent numbers
(months).

···

On 9/29/06, Jeremy Tregunna <jtregunna@blurgle.ca> wrote:

On 06-09-29, at 08:59, Matthew Harris wrote:

> On 9/29/06, Tanner Burson <tanner.burson@gmail.com> wrote:
>> You mention that it can convert number of days/weeks into months.
>> How do
>> you deal with the fact that a "month" doesn't have a standard
>> number of
>> days? Do you do as the Rails extension does by assuming a fixed
>> number, or
>> some other form of trickery?
>
> Since durations are only based on timespans of fixed lengths, they do
> not work relatively. So there is no time-detection magic to determine
> the days in a given month, because also durations don't distinguish
> between what month it is (whether it be January or Feburary).
> BigDuration, the class that supports years and months will assume 30
> days as 1 month, and 12 months as 1 year.

Just to add a little bit here, in Io, our Duration module doesn't
know anything about months at the moment, instead adding up days. It
could keep a list holding the number of days in a month (in the case
of february, if a leap year is detected, replace the second item in
the list (28) with 29). Now that extension is pretty easy, but right
now we only keep track of years, days, hours, and so on. You might
consider doing something similar. It's fairly straight forward.

Also, out of curiosity, why have two Duration classes? I can't see
how BigDuration would be required, perhaps could you elaborate a little?

> Matt

--
Jeremy Tregunna
jtregunna@blurgle.ca

--
Matt