Geo-PostalCode-NoDB

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

    all Berkeley DB support has been removed in favor of loading the entire
    CSV database into memory.

ORIGINAL DESCRIPTION
    This is a module for calculating the distance between two postal codes.
    It can find the postal codes within a specified distance of another
    postal code or city and state. It can lookup the city, state, latitude
    and longitude by postal code.

RATIONALE BEHIND NO BERKELEY DB
    On a busy day at work, I couldn't get Geo::PostalCode to work with newer
    data (the data source TJMATHER points to is no longer available), so the
    tests shippsed with his module pass, but trying to use real data no
    longer seems to work. DB_File marked the Geo::PostalCode::InstallDB
    output file as invalid type or format. If you don't run into that issue
    by not wanting to use this module, please drop me a note! I would love
    to learn how other people made it work.

    So, in order to get my shit done, I decided to create this module.
    Loading the whole data into memory from the class constructor has been
    proven to be enough for massive usage (citation needed) on a Dancer

lib/Geo/PostalCode/NoDB.pm  view on Meta::CPAN


=head1 ORIGINAL DESCRIPTION

This is a module for calculating the distance between two postal
codes.  It can find the postal codes within a specified distance of another
postal code or city and state.  It can lookup the city, state, latitude and longitude by
postal code.

=head1 RATIONALE BEHIND NO BERKELEY DB

On a busy day at work, I couldn't get Geo::PostalCode to work
with newer data (the data source TJMATHER points to is no
longer available), so the tests shippsed with his module pass, but trying to
use real data no longer seems to work. DB_File marked the Geo::PostalCode::InstallDB
output file as invalid type or format. If you don't run into that issue by not wanting
to use this module, please drop me a note! I would love to learn how other people
made it work.


So, in order to get my shit done, I decided to create this module. Loading the whole data into memory
from the class constructor has been proven to be enough for massive usage (citation needed)



( run in 0.254 second using v1.01-cache-2.11-cpan-87723dcf8b7 )