ANN: dbf.py 0.94

Discussion in 'Python' started by Ethan Furman, Jul 21, 2012.

  1. Ethan Furman

    Ethan Furman Guest

    Getting closer to a stable release.

    Latest version has a simpler, cleaner API, and works on PyPy (and
    hopefully the other implementations as well ;), as well as CPython.

    Get your copy at http://python.org/pypi/dbf.

    Bug reports, comments, and kudos welcome! ;)

    ~Ethan~
    Ethan Furman, Jul 21, 2012
    #1
    1. Advertising

  2. On Fri, 20 Jul 2012 16:59:21 -0700, Ethan Furman wrote:

    > Getting closer to a stable release.


    Excellent! That's fantastic news! I've been waiting for a stable release
    of dbf for months! I just have one question.

    What is dbf?


    > Latest version has a simpler, cleaner API, and works on PyPy (and
    > hopefully the other implementations as well ;), as well as CPython.
    >
    > Get your copy at http://python.org/pypi/dbf.


    I don't generally click on arbitrary links to find out whether or not the
    link is something that interests me enough to click on it.



    --
    Steven
    Steven D'Aprano, Jul 21, 2012
    #2
    1. Advertising

  3. On 21 Jul 2012 00:50:13 GMT, Steven D'Aprano
    <> wrote:

    >> Latest version has a simpler, cleaner API, and works on PyPy (and
    >> hopefully the other implementations as well ;), as well as CPython.
    >>
    >> Get your copy at http://python.org/pypi/dbf.

    >
    >I don't generally click on arbitrary links to find out whether or not the
    >link is something that interests me enough to click on it.


    Can't really call a cheese shop link arbitrary. It's in the best place
    it could be for providing info about the package.

    ~Temia
    --
    Invective! Verb your expletive nouns!
    Temia Eszteri, Jul 21, 2012
    #3
  4. On Sat, Jul 21, 2012 at 12:56 PM, Temia Eszteri <> wrote:
    > On 21 Jul 2012 00:50:13 GMT, Steven D'Aprano
    > <> wrote:
    >
    >>> Latest version has a simpler, cleaner API, and works on PyPy (and
    >>> hopefully the other implementations as well ;), as well as CPython.
    >>>
    >>> Get your copy at http://python.org/pypi/dbf.

    >>
    >>I don't generally click on arbitrary links to find out whether or not the
    >>link is something that interests me enough to click on it.

    >
    > Can't really call a cheese shop link arbitrary. It's in the best place
    > it could be for providing info about the package.


    True, but Steven's point still stands, that announcements of this
    nature are far more readable when they open with a one-sentence
    statement of what the package _is_.

    ChrisA
    Chris Angelico, Jul 21, 2012
    #4
  5. Ethan Furman

    Ethan Furman Guest

    Steven D'Aprano wrote:
    > On Fri, 20 Jul 2012 16:59:21 -0700, Ethan Furman wrote:
    >
    >> Getting closer to a stable release.

    >
    > Excellent! That's fantastic news! I've been waiting for a stable release
    > of dbf for months! I just have one question.
    >
    > What is dbf?


    :)

    dbf (also known as python dbase) is a module for reading/writing
    dBase III, FP, VFP, and soon Clipper, .dbf database files. It's
    an ancient format that still finds lots of use.

    It even reads and writes memo fields -- something which none of the
    other modules do (which is why I wrote this one -- I needed that! ;).

    It supports unicode, and returns all fields as native Python types:

    Character --> unicode
    Date --> datetime.date
    Logical --> bool/None
    Memo --> unicode
    Numeric --> int/float depending on field definition

    If a field is uninitialized (Date, Logical, Numeric) then None is
    returned for the value.

    Tables are accessible as lists; Records are accessible as lists, dicts,
    and objects ( attribute access ).

    Enjoy your weekend!
    Ethan Furman, Jul 21, 2012
    #5
  6. On Sat, 21 Jul 2012 13:02:55 +1000, Chris Angelico <>
    wrote:

    >On Sat, Jul 21, 2012 at 12:56 PM, Temia Eszteri <> wrote:
    >> On 21 Jul 2012 00:50:13 GMT, Steven D'Aprano
    >> <> wrote:
    >>
    >>>> Latest version has a simpler, cleaner API, and works on PyPy (and
    >>>> hopefully the other implementations as well ;), as well as CPython.
    >>>>
    >>>> Get your copy at http://python.org/pypi/dbf.
    >>>
    >>>I don't generally click on arbitrary links to find out whether or not the
    >>>link is something that interests me enough to click on it.

    >>
    >> Can't really call a cheese shop link arbitrary. It's in the best place
    >> it could be for providing info about the package.

    >
    >True, but Steven's point still stands, that announcements of this
    >nature are far more readable when they open with a one-sentence
    >statement of what the package _is_.
    >
    >ChrisA


    If I wanted to counter his whole point, I would've quoted his whole
    post. ;P Yes, the post to the newsgroup is rather oblique, but the
    cheese shop is hardly arbitrary.

    ~Temia
    --
    Invective! Verb your expletive nouns!
    Temia Eszteri, Jul 21, 2012
    #6
  7. On Fri, 20 Jul 2012 19:56:59 -0700, Temia Eszteri wrote:

    >>I don't generally click on arbitrary links to find out whether or not
    >>the link is something that interests me enough to click on it.

    >
    > Can't really call a cheese shop link arbitrary. It's in the best place
    > it could be for providing info about the package.


    You've missed the point. Why should I bother to click on it at all, PyPI
    or not, if I'm going to find it is a library for something I don't care
    about? If the developer of the library doesn't write a few words to tell
    people what his library does when making an announcement, or what
    improvements there are from the previous release, he's going to struggle
    to attract even those users who *would* be interested, if only they knew
    about it.

    This mailing list is about helping our fellow Python developers improve
    their skills and solve problems. That doesn't just mean *coding*
    problems, it also means helping them to write better documentation and
    promote their software better.

    For every person like me who takes the time out to gently remind the
    developer that we aren't mind-readers and don't know WTF he's talking
    about, there are a thousand who just move on, and he's just lost 99% of his
    potential user-base. Since he's taken the time out to make a public
    announcement, I assume he would like people to use his software. If not,
    why bother making the announcement at all?

    Unless the software is so well-known that everybody knows what it is,
    failure to mention what the software does gives the impression that:

    1) the software is so niche, or so ill-thought out, that the developer
    *can't* describe it succinctly;

    2) the developer has such poor communication skills that trying to get
    support will be a nightmare;

    3) that he just doesn't give a monkey's toss for anyone else's time

    or all three. Ethan is a good, helpful member of this community, and
    so I'm pretty sure that neither 2) nor 3) are true, but others may get
    the wrong impression.

    Here are a few randomly selected examples of good release announcements:

    http://mail.python.org/pipermail/python-announce-list/2012-June/009528.html

    http://mail.python.org/pipermail/python-announce-list/2012-June/009509.html

    http://mail.python.org/pipermail/python-announce-list/2012-June/009524.html



    --
    Steven
    Steven D'Aprano, Jul 21, 2012
    #7
  8. On 21 Jul 2012 03:34:44 GMT, Steven D'Aprano
    <> wrote:

    >tl;dr


    Easy there, tiger. No need to get riled up over a single nitpick over
    phrasing.

    ~Temia
    --
    Invective! Verb your expletive nouns!
    Temia Eszteri, Jul 21, 2012
    #8
  9. On Sat, Jul 21, 2012 at 1:34 PM, Steven D'Aprano
    <> wrote:
    > Unless the software is so well-known that everybody knows what it is...


    I've yet to meet ANY piece of software that's like that. Even with
    releases of CPython (arguably the primary point of this list) it
    wouldn't hurt to give an explanation, and certainly with other
    Pythons, it'd help a lot (PyPy and Jython are probably guessable, but
    I wouldn't bet on anyone knowing what "IronPython" is without a
    summary).

    > Here are a few randomly selected examples of good release announcements:
    >
    > http://mail.python.org/pipermail/python-announce-list/2012-June/009528.html
    >
    > http://mail.python.org/pipermail/python-announce-list/2012-June/009509.html
    >
    > http://mail.python.org/pipermail/python-announce-list/2012-June/009524.html


    Agreed, those are worth imitating.

    ChrisA
    Chris Angelico, Jul 21, 2012
    #9
  10. Ethan Furman

    Ethan Furman Guest

    Steven D'Aprano wrote:
    > This mailing list is about helping our fellow Python developers improve
    > their skills and solve problems. That doesn't just mean *coding*
    > problems, it also means helping them to write better documentation and
    > promote their software better.


    Indeed it is, and your reminder is appreciated. Hopefully my
    followup-post was more explanatory.


    > Unless the software is so well-known that everybody knows what it is,
    > failure to mention what the software does gives the impression that:
    >
    > 1) the software is so niche, or so ill-thought out, that the developer
    > *can't* describe it succinctly;


    Nah -- just the end of a long week, needed to go get my daughter, and
    wanted it out there for those few who actually need the bug fixes (which
    I neglected to mention).

    > 2) the developer has such poor communication skills that trying to get
    > support will be a nightmare;


    My support is pretty good. :)


    > 3) that he just doesn't give a monkey's toss for anyone else's time


    See point one.

    > or all three. Ethan is a good, helpful member of this community, and
    > so I'm pretty sure that neither 2) nor 3) are true, but others may get
    > the wrong impression.


    Thank you. The project is kinda niche, but very useful if you happen to
    be in that niche.


    > Here are a few randomly selected examples of good release announcements:
    >
    > http://mail.python.org/pipermail/python-announce-list/2012-June/009528.html
    >
    > http://mail.python.org/pipermail/python-announce-list/2012-June/009509.html
    >
    > http://mail.python.org/pipermail/python-announce-list/2012-June/009524.html


    Those are good. My announcement will be better next time.

    ~Ethan~
    Ethan Furman, Jul 21, 2012
    #10
  11. Ethan Furman

    Matej Cepl Guest

    On 21/07/12 05:26, Ethan Furman wrote:
    > dbf (also known as python dbase) is a module for reading/writing
    > dBase III, FP, VFP, and soon Clipper, .dbf database files. It's
    > an ancient format that still finds lots of use.


    Other than the caring for the ancient legacy data, it is still widely
    used in GIS, because shapefiles (http://en.wikipedia.org/wiki/Shapefile)
    are based on it.

    Matěj
    Matej Cepl, Jul 21, 2012
    #11
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Ethan Furman

    ANN: dbf.py 0.90.001

    Ethan Furman, Feb 11, 2012, in forum: Python
    Replies:
    0
    Views:
    118
    Ethan Furman
    Feb 11, 2012
  2. Simon Cropper

    Re: ANN: dbf.py 0.94

    Simon Cropper, Jul 21, 2012, in forum: Python
    Replies:
    1
    Views:
    118
    Steven D'Aprano
    Jul 21, 2012
  3. Ethan Furman

    Re: ANN: dbf.py 0.94

    Ethan Furman, Jul 21, 2012, in forum: Python
    Replies:
    0
    Views:
    125
    Ethan Furman
    Jul 21, 2012
  4. Chris Angelico

    Re: ANN: dbf.py 0.94

    Chris Angelico, Jul 21, 2012, in forum: Python
    Replies:
    0
    Views:
    101
    Chris Angelico
    Jul 21, 2012
  5. Ethan Furman

    Re: ANN: dbf.py 0.94

    Ethan Furman, Jul 21, 2012, in forum: Python
    Replies:
    0
    Views:
    134
    Ethan Furman
    Jul 21, 2012
Loading...

Share This Page