in reply to Astro::Sunrise error

It seems to be an error in the Module's recently added iterator feature, it's definitely worth filing a bug. I found that if I leave off the last argument to sunrise, I get an answer for that date.
($sunrise, $sunset)=sunrise($y,$m,$d,$long,$lati,$Zone,$DST,$ALT); 07:51 19:52
That seems to be about three minutes off for both sunrise and sunset from what I get at this page: http://aa.usno.navy.mil/data/docs/RS_OneDay.php

Assuming that site is correct, it may still be close enough for your purposes.

Update: corrected some numbers above.