Skip to content

Releases: maxmind/GeoIP2-node

7.0.0

Choose a tag to compare

@oschwald oschwald released this 29 Jun 19:00
Immutable release. Only release title and notes can be modified.
b016a48
  • Breaking Dropped support for Node.js 18 and 20. Node.js 22 or greater is now
  • Breaking Dropped commonjs support. The package is now only available as an ES module.
  • Breaking Errors from the WebServiceClient are now thrown as
    WebServiceError instances, which extend Error, rather than as plain
    objects. The code, error, status, and url properties are preserved,
    so existing field access continues to work, but the thrown value is now an
    Error. The original error is now preserved as the standard cause
    property (for example, the network error behind a FETCH_ERROR). The
    WebServiceError class and the WebServiceClientError type are now exported
    from the package.
  • The code property on WebServiceError and the WebServiceClientError
    interface is now typed as WebServiceErrorCode
    (ClientErrorCode | (string & {})) instead of string, providing
    autocompletion for the client-generated codes while still accepting any
    code returned by the web service. The ClientErrorCode and
    WebServiceErrorCode types are exported from the package.
  • The AddressNotFoundError, BadMethodCallError, InvalidDbBufferError,
    and ValueError classes now accept an optional cause and forward it to
    Error. Reader.openBuffer() now preserves the underlying parsing error as
    the cause of the InvalidDbBufferError it throws.
  • Added a fetcher option to the WebServiceClient options, allowing a
    custom fetch implementation to be supplied (for example, to route requests
    through a custom dispatcher or proxy, or for testing). It defaults to the
    global fetch. The WebServiceClientOptions type is exported from the
    package.

6.3.4

Choose a tag to compare

@oschwald oschwald released this 25 Nov 17:31
Immutable release. Only release title and notes can be modified.
f31df6c
  • Second attempt to fix doc publishing during release from GitHub.

6.3.3

Choose a tag to compare

@oschwald oschwald released this 25 Nov 17:16
Immutable release. Only release title and notes can be modified.
2276749
  • Doc publishing fix during release from GitHub.

6.3.2

Choose a tag to compare

@oschwald oschwald released this 25 Nov 17:11
Immutable release. Only release title and notes can be modified.
50814bf
  • Second release attempt via Trusted Publishing.

6.3.1

Choose a tag to compare

@oschwald oschwald released this 25 Nov 17:05
Immutable release. Only release title and notes can be modified.
4d179ba
  • First release attempt via Trusted Publishing.

6.3.0

Choose a tag to compare

@oschwald oschwald released this 20 Nov 20:08
e4e54bc
  • A new anonymizer object has been added to the Insights response model.
    This object contains information about anonymizing services and VPN providers
    associated with an IP address. Available from the GeoIP2 Insights web service
    only. The object includes the following properties:
    • confidence: A score (1-99) representing percent confidence that the
      network is part of an actively used VPN service
    • isAnonymous: Indicates if the IP belongs to any anonymous network
    • isAnonymousVpn: Identifies IPs registered to anonymous VPN providers
    • isHostingProvider: Flags hosting/VPN providers used for anonymizing
    • isPublicProxy: Identifies public proxy addresses
    • isResidentialProxy: Detects suspected anonymizing networks on
      residential ISPs
    • isTorExitNode: Identifies Tor exit nodes
    • networkLastSeen: The last day (YYYY-MM-DD) the network was sighted in
      our analysis of anonymized networks
    • providerName: The name of identified VPN providers (e.g., "NordVPN")
  • A new ipRiskSnapshot property has been added to the traits object.
    This provides a risk score ranging from 0.01 to 99, with higher values
    indicating greater risk. Available from the GeoIP2 Insights web service only.
  • The following properties in the traits object have been deprecated in
    favor of the new anonymizer object. These properties will continue to work
    but users should migrate to using the anonymizer object:
    • isAnonymous
    • isAnonymousVpn
    • isHostingProvider
    • isPublicProxy
    • isResidentialProxy
    • isTorExitNode
  • Added the status property to WebServiceClientError. This property
    contains the HTTP status code when the error is the result of an HTTP
    response error. Network errors (timeouts, fetch errors) will not have a
    status code.

6.2.0

Choose a tag to compare

@horgh horgh released this 07 Oct 20:49
  • Updated dependency maxmind to v5.0.0. This fixes an issue where an
    older version of maxmind was technically allowed which did not support
    GeoIP Anonymous Plus. Reported by Carlos Alberto Costa Beppler. GitHub #1587.

6.1.0

Choose a tag to compare

@oschwald oschwald released this 05 May 18:37
8d28546

6.1.0

  • Support for the GeoIP Anonymous Plus database has been added. To do a
    lookup in this database, use the anonymousPlus method on the
    database reader.

v6.0.0

Choose a tag to compare

@kevcenteno kevcenteno released this 18 Feb 21:17
  • Breaking Internal webservice calls now use Node's built-in fetch instead of http. This
    will affect users who are on unsupported versions of Node, specifically Node 17 and below.
  • Two new error codes have been added: NETWORK_TIMEOUT and FETCH_ERROR, second of which is returned
    when there's a fetch related error that could not be handled by other errors.
  • The ip6addr dependency has been removed.
  • metroCode on LocationRecord has been marked deprecated. The code values
    are no longer being updated.

v5.0.0

Choose a tag to compare

@horgh horgh released this 05 Dec 20:29
b58bef7
  • Breaking Drop node 16 support
  • The isAnycast attribute was added to TraitsRecord. This is true if
    the IP address belongs to an anycast
    network
    . This is available for the
    GeoIP2 Country, City Plus, and Insights web services and the GeoIP2 Country,
    City, and Enterprise databases.
  • The boolean attributes on the record models are no longer optional. We
    set missing values to false during construction.