All notable changes to this project will be documented in this file. The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
2.1.5 (2019-01-09)
- An issue where
locateByIP()
method would fail due to external service being shut down. Added a new (default) Geo-IP service provider to GeoJS withHTTPS
support. - An issue where XHR request handlers would not be invoked in IE9.
getIP()
method now uses XHR request instead of JSONP, since CORS is supported by the service.- Added ability fetch location-by-IP data via XHR. (Set
xhr
totrue
when passing a new Geo-IP source tosetGeoIPSource()
method.) - Default value for
timeout
option is changed to6000
for.locate()
method. - Improved minification and reduced library size.
- (Dev) Removed grunt in favour of npm scripts. Removed Jasmine in favour of Jest.
2.1.3 (2018-04-02)
- Changed default Geo-IP provider to nekudo/shiny_geoip. (FreeGeoIP service is shut down). Fixes issue #53.
- An issue with Geo-IP schema, occurred when a function is used instead of a mapper object.
- Geo IP source: IPStack (requires a free API key). Note that this is a separate file, you can include in your HTML. Or you can use a different provider if you like. See the Caveats section before you do so.
2.1.1 (2017-03-11)
- Support for hybrid or sandboxed environments (such as Electron). Now, forcing the export mechanism to assign
geolocator
towindow
even if it's used via animport
orrequire
statement. i.e. this happens when used within babel/webpack bundled code or from within an electron app. See issues #42 and #48.
- Minor revision, clean up.
2.1.0 (2016-09-30)
Please read the API documentation.
- Ability to get static Google Maps (image) via
.getStaticMap()
method. #34. Make sure you have enabled Google Static Maps API in Google Developers console. - Ability to style Google Maps. Either set global styles via
geolocator.config()
or corresponding methods such as.createMap()
or.getStaticMap()
.
- Improved desired accuracy logic. Added
maximumWait:Number
andonProgress:Function
options for.locate()
method. - Minor revisions, updated dev-dependencies.
- Changed Geo-IP provider to FreeGeoIP. (Wikimedia has shutdown the geo service.) Fixes issue #36.
- Respecting countries with states, other than US. Fixes #37.
2.0.0 (2016-06-25)
Please read the API documentation.
- Feature: Watch geographic position.
- Feature: Locate by mobile information.
- Feature: Get timezone information. Fixes issue #13.
- Feature: Get distance matrix and duration information.
- Feature: Calculate distance between two geographic points.
- Feature: Various geographic conversion utilities.
- Feature: Get client IP.
- Feature: Fetched location includes country flag image (SVG) URL.
- Feature: Language support (depends on the service provider). Fixes issue #20.
- Feature: Universal module (CommonJS/Node/AMD..). Fixes issue #16.
- Support multiple calls. Fixes issue #24.
- BREAKING: Method signatures changed for
.locate()
and.locateByIP()
methods. - BREAKING: Most features make use of Google APIs. So you'll need a (single) Google API key to use them all. If you don't have a key, you can still use Geolocator like the previous versions, but with limited features.
- BREAKING:
geolocator.location
property is dropped. You can always access the result, via the second argument of each async method's callback. See documented examples. - Better Geolocation accuracy. Fixes issue #28.
- Google Maps is no longer loaded by default. Depends on called methods or options.
- Now, we only support a single Geo-IP source (Wikimedia). Can be set/changed via
setGeoIPSource()
method.
- An issue with wikimedia IP lookup. Fixes #32.
- HTTPS secure connection support for IP geo-sources. (Note: GeoPlugin does not support HTTPS. You should use FreeGeoIP or Wikimedia IP sources instead.). (Fixes Issue #11. PR: @iurisilvio)
- Created NPM package.
- Created Bower package.
- Removed the
sensor
parameter from Goole Maps loader, since it's not required anymore. - Bumped Google Maps version to
3.18
.
- FNew method:
isPositionError()
.
- The recent
Error
orPositionError
(HTML5) is passed to error callbacks instead ofString
error message. See updated documentation. Fixes issue #7. (This shouldn't be a breaking-change but do test your app if you decide to upgrade.) - Updated example. (Enable/disable HTML5-to-IP fallback.)
- Source scripts are now automatically removed from DOM after result is received.
- Changed default IP source to GeoPlugin (index:
1
); since FreeGeoIP is occasionally down these days.
errorCallback
would not be invoked if IP geo-source service is not available. Fixes issue #6.
- Code revisions, optimizations.
- Now loads the latest release version of Google Maps (
3.15
).
- JSLint compliant code.
- Minor code revisions.
- Google has deprecated
google.loader.ClientLocation
API. As a result; Google (Loader) is removed from IP-Geo Sources. - Indexes changed for IP-Geo sources. New Indexes: FreeGeoIP (0), GeoPlugin (1), Wikimedia (2)