NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

bin/44781: units(1) currency conversions are not dynamic or updated



>Number:         44781
>Category:       bin
>Synopsis:       units(1) currency conversions are not dynamic or updated
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    bin-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Mar 28 16:50:00 +0000 2011
>Originator:     Erik E. Fair
>Release:        NetBSD 5.1
>Organization:
        The NetBSD Project
>Environment:
>Description:
        The units(1) program's currency conversion values were last
        updated in 1993. While perhaps of historical interest, it's
        not very useful. The program should either have a mechanism
        for the user to trigger an update to those currency exchange
        conversion tables, or they should be removed from the
        program's units library (database).

        One example in a competing system: the Mac OS X "calculator"
        application does unit conversions similarly to the units
        program, but its currency conversion tables can be updated
        by the user (there is a menu option for that - the program
        is not doing so on any periodic or continuous basis, so
        its many instances (i.e. every Mac OS X instance in the
        world) are not beating the data source to death with update
        queries).

        This is just the most obvious example of a more general
        problem in this program: there are conversion units which
        are physical constants, and then there are units which are
        measured, and those measurements can change over time (e.g.
        the number of seconds in a year (we have leap seconds added
        by the IERS, and how does that affect the definition of a
        light year?)), sometimes quite dynamically (e.g. currency
        exhange rates).

        The units program should have two databases (libraries)
        for conversion units: one that's static as in the current
        implementation, and a second one for dynamic units whose
        contents can be fetched/update on a triggered basis by any
        user of the program. Further, at minimum, the source of
        the information should be documented for authentication
        purposes, if not actually authenticated by the update
        mechanism itself.

        The "dynamic" units library's last update timestamp should
        be presented to the user, and compared against current
        date, with a warning if the data is "too old."

>How-To-Repeat:
        visual inspection of /usr/share/misc/units.lib
>Fix:
        

>Unformatted:
        
        


Home | Main Index | Thread Index | Old Index