1CHANGELOG
2=========
3
41.5.0 (2019-09-30)
5------------------
6
7* PHP 5.6 or greater is now required.
8* The C extension now supports PHP 8. Pull request by John Boehr.
9  GitHub #87.
10* A new method, `getWithPrefixLen`, was added to the `Reader` class.
11  This method returns an array containing the record and the prefix
12  length for that record. GitHub #89.
13
141.4.1 (2019-01-04)
15------------------
16
17* The `maxminddb` extension now returns a string when a `uint32`
18  value is greater than `LONG_MAX`. Previously, the value would
19  overflow. This generally only affects 32-bit machines.  Reported
20  by Remi Collet. GitHub #79.
21* For `uint64` values, the `maxminddb` extension now returns an
22  integer rather than a string when the value is less than or equal
23  to `LONG_MAX`. This more closely matches the behavior of the pure
24  PHP reader.
25
261.4.0 (2018-11-20)
27------------------
28
29* The `maxminddb` extension now has the arginfo when using reflection.
30  PR by Remi Collet. GitHub #75.
31* The `maxminddb` extension now provides `MINFO()` function that
32  displays the extension version and the libmaxminddb version. PR by
33  Remi Collet. GitHub #74.
34* The `maxminddb` `configure` script now uses `pkg-config` when
35  available to get libmaxmindb build info. PR by Remi Collet.
36  GitHub #73.
37* The pure PHP reader now correctly decodes integers on 32-bit platforms.
38  Previously, large integers would overflow. Reported by Remi Collet.
39  GitHub #77.
40* There are small performance improvements for the pure PHP reader.
41
421.3.0 (2018-02-21)
43------------------
44
45* IMPORTANT: The `maxminddb` extension now obeys `open_basedir`. If
46  `open_basedir` is set, you _must_ store the database within the
47  specified directory. Placing the file outside of this directory
48  will result in an exception. Please test your integration before
49  upgrading the extension. This does not affect the pure PHP
50  implementation, which has always had this restriction. Reported
51  by Benoît Burnichon. GitHub #61.
52* A custom `autoload.php` file is provided for installations without
53  Composer. GitHub #56.
54
551.2.0 (2017-10-27)
56------------------
57
58* PHP 5.4 or greater is now required.
59* The `Reader` class for the `maxminddb` extension is no longer final.
60  This was change to match the behavior of the pure PHP class.
61  Reported and fixed by venyii. GitHub #52 & #54.
62
631.1.3 (2017-01-19)
64------------------
65
66* Fix incorrect version in `ext/php_maxminddb.h`. GitHub #48.
67
681.1.2 (2016-11-22)
69------------------
70
71* Searching for database metadata only occurs within the last 128KB
72  (128 * 1024 bytes) of the file, speeding detection of corrupt
73  datafiles. Reported by Eric Teubert. GitHub #42.
74* Suggest relevant extensions when installing with Composer. GitHub #37.
75
761.1.1 (2016-09-15)
77------------------
78
79* Development files were added to the `.gitattributes` as `export-ignore` so
80  that they are not part of the Composer release. Pull request by Michele
81  Locati. GitHub #39.
82
831.1.0 (2016-01-04)
84------------------
85
86* The MaxMind DB extension now supports PHP 7. Pull request by John Boehr.
87  GitHub #27.
88
891.0.3 (2015-03-13)
90------------------
91
92* All uses of `strlen` were removed. This should prevent issues in situations
93  where the function is overloaded or otherwise broken.
94
951.0.2 (2015-01-19)
96------------------
97
98* Previously the MaxMind DB extension would cause a segfault if the Reader
99  object's destructor was called without first having called the constructor.
100  (Reported by Matthias Saou & Juan Peri. GitHub #20.)
101
1021.0.1 (2015-01-12)
103------------------
104
105* In the last several releases, the version number in the extension was
106  incorrect. This release is being done to correct it. No other code changes
107  are included.
108
1091.0.0 (2014-09-22)
110------------------
111
112* First production release.
113* In the pure PHP reader, a string length test after `fread()` was replaced
114  with the difference between the start pointer and the end pointer. This
115  provided a 15% speed increase.
116
1170.3.3 (2014-09-15)
118------------------
119
120* Clarified behavior of 128-bit type in documentation.
121* Updated phpunit and fixed some test breakage from the newer version.
122
1230.3.2 (2014-09-10)
124------------------
125
126* Fixed invalid reference to global class RuntimeException from namespaced
127  code. Fixed by Steven Don. GitHub issue #15.
128* Additional documentation of `Metadata` class as well as misc. documentation
129  cleanup.
130
1310.3.1 (2014-05-01)
132------------------
133
134* The API now works when `mbstring.func_overload` is set.
135* BCMath is no longer required. If the decoder encounters a big integer,
136  it will try to use GMP and then BCMath. If both of those fail, it will
137  throw an exception. No databases released by MaxMind currently use big
138  integers.
139* The API now officially supports HHVM when using the pure PHP reader.
140
1410.3.0 (2014-02-19)
142------------------
143
144* This API is now licensed under the Apache License, Version 2.0.
145* The code for the C extension was cleaned up, fixing several potential
146  issues.
147
1480.2.0 (2013-10-21)
149------------------
150
151* Added optional C extension for using libmaxminddb in place of the pure PHP
152  reader.
153* Significantly improved error handling in pure PHP reader.
154* Improved performance for IPv4 lookups in an IPv6 database.
155
1560.1.0 (2013-07-16)
157------------------
158
159* Initial release
160