Releases: oschwald/maxminddb-golang
Releases · oschwald/maxminddb-golang
1.6.0
- This module now uses Go modules. Requested by Matthew Rothenberg.
GitHub #49. - Plan 9 is now supported. Pull request by Jacob Moody. GitHub #61.
- Documentation fixes. Pull request by Olaf Alders. GitHub #62.
- Thread-safety is now mentioned in the documentation. Requested by
Ken Sedgwick. GitHub #39. - Fix off-by-one error in file offset safety check. Reported by Will
Storey. GitHub #63.
1.5.0
1.4.0
1.3.1
1.3.0
- The methods on the
maxminddb.Reader
struct now return an error if
called on a closed database reader. Previously, this could cause a
segmentation violation when using a memory-mapped file. - The
Close
method on themaxminddb.Reader
struct now sets the
underlying buffer to nil, even when usingFromBytes
orOpen
on
Google App Engine. - No longer uses constants from
syscall
1.2.1
1.2.0
- The database decoder now does bound checking when decoding data from the database. This is to help ensure that the reader does not panic when given a corrupt database to decode. Closes #37.
- The reader will now return an error on a data structure with a depth greater than 512. This is done to prevent the possibility of a stack overflow on a cyclic data structure in a corrupt database. This matches the maximum depth allowed by
libmaxminddb
. All MaxMind databases currently have a depth of less than five.
1.1.0
- Added appengine build tag for Windows. When enabled, memory-mapping will be
disabled in the Windows build as it is for the non-Windows build. Pull
request #35 by Ingo Oeser. - SetFinalizer is now used to unmap files if the user fails to close the
reader. Usingr.Close()
is still recommended for most use cases. - Previously, an unsafe conversion between
[]byte
and string was used to
avoid unnecessary allocations when decoding struct keys. The decoder now
relies on a compiler optimization onstring([]byte)
map lookups to achieve
this rather than usingunsafe
.