Skip to content

Releases: maxmind/MaxMind-DB-Reader-python

1.2.3

Choose a tag to compare

@oschwald oschwald released this 11 Jan 17:29
  • Improve compatibility with other Python 2 ipaddress backports. Although
    ipaddress is highly recommended, py2-ipaddress and
    backport_ipaddress should now work. Incompatibility reported by
    John Zadroga on geoip2 GitHub issue #41.

1.2.2

Choose a tag to compare

@oschwald oschwald released this 21 Nov 22:31
  • Fix to the classifiers in setup.py. No code changes.

1.2.1: Use ipaddress instead of ipaddr on Python 2. Packaging fixes.

Choose a tag to compare

@oschwald oschwald released this 10 Jun 16:14
  • This module now uses the ipaddress module for Python 2 rather than the
    ipaddr module. Users should notice no behavior change beyond the change
    in dependencies.
  • Removed requirements.txt from MANIFEST.in in order to stop warning
    during installation.
  • Added missing test data.

1.2.0: MODE_FILE fix when reader is loaded before forking

Choose a tag to compare

@oschwald oschwald released this 07 Apr 22:20
  • Previously if MODE_FILE was used and the database was loaded before
    forking, the parent and children would use the same file table entry without
    locking causing errors reading the database due to the offset being changed
    by other processes. In MODE_FILE, the reader will now use os.pread
    when available and a lock when os.pread is not available (e.g., Python
    2). If you are using MODE_FILE on a Python without os.pread, it is
    recommended that you open the database after forking to reduce resource
    contention.
  • The Metadata class now overloads __repr__ to provide a useful
    representation of the contents when debugging.
  • An InvalidDatabaseError will now be thrown if the data type read from
    the database is invalid. Previously a KeyError was thrown.

1.1.1: Python 3 MODE_AUTO fix

Choose a tag to compare

@oschwald oschwald released this 10 Dec 15:47
  • On Python 3 there was a potential issue where open_database with
    MODE_AUTO would try to use the C extension when it was not available.
    This could cause the function to fail rather than falling back to a pure
    Python mode.

1.1.0: Memory and file more for Python reader

Choose a tag to compare

@oschwald oschwald released this 09 Dec 18:58
  • The pure Python reader now supports an optional file and memory mode in
    addition to the existing memory-map mode. If your Python does not provide
    the mmap module, the file mode will be used by default.
  • The preferred method for opening a database is now the open_database
    function in maxminddb. This function now takes an optional read
    mode.
  • The C extension no longer creates its own InvalidDatabaseError class
    and instead uses the one defined in maxminddb.errors.

1.0.0

Choose a tag to compare

@oschwald oschwald released this 22 Sep 16:12
  • First production release.
  • Two potential C extension issues discovered by Coverity were fixed:
    • There was a small resource leak that occurred when the system ran out of
      memory.
    • There was a theoretical null pointer issue that would occur only if
      libmaxminddb returned invalid data.

0.3.3

0.3.3 Pre-release
Pre-release

Choose a tag to compare

@oschwald oschwald released this 09 Apr 20:43
  • Corrected initialization of objects in C extension and made the objects
    behave more similarly to their pure Python counterparts.

0.3.2

0.3.2 Pre-release
Pre-release

Choose a tag to compare

@oschwald oschwald released this 09 Apr 20:42
  • Switched to Apache 2.0 license.
  • We now open the database file in read-only mode.
  • Minor code clean-up.

0.3.1

0.3.1 Pre-release
Pre-release

Choose a tag to compare

@oschwald oschwald released this 12 Feb 02:52
  • Fixed packaging problem that caused import to fail.