Go to file
Adam Rocska b581f12b4f Just to be absolutely in sync with GitHub. This is just a sketch.
Signed-off-by: Adam Rocska <adam.rocska@adams.solutions>
2020-05-01 13:44:26 +02:00
.idea Making the tests & the API nicer. 2020-04-29 16:41:19 +02:00
Sources Just to be absolutely in sync with GitHub. This is just a sketch. 2020-05-01 13:44:26 +02:00
Tests Accepted the compiler warning's suggestion. Dunno what it helps, but sure. 2020-05-01 13:37:50 +02:00
.gitignore Initial Commit. 2020-04-27 15:25:09 +02:00
.gitmodules Removed submodules, and doing stuff. 2020-04-28 11:08:31 +02:00
LICENSE Added a license. Yea, GNU GPL seems to be a good enough idea here. 2020-04-27 21:46:34 +02:00
Package.swift Committing half made not working code to ask for some help. The search algorithm gets stuck at index 20990 as if it was an overflow, while it can't be an overflow, since it's a typealias for Int, and also, it's not a square number. Weird. Bughunting. 2020-04-29 13:03:10 +02:00
README.md I figured out what the problem was. I was an idiot in many ways : 2020-04-27 21:27:28 +02:00

README.md

GeoIP2-swift

A decoupled Swift wrapper for MaxMind's GeoIP database's C Library.

Inspiration, and initial state of repository from lexrus's MMDB-Swift repository.

Disclaimers

  1. I'm no C guru.
  2. I'm no Swift guru.
  3. I have no idea what I'm doing.
  4. For my purposes the lib' works as is, but be super cautious because of items 1-3.

Version Infos

1. libmaxminddb : 1.3.2

The current latest version is 1.4.2, however I got MMDB_INVALID_DATA_ERRORs, and other issues for the current latest GeoLite2 database.
The earliest version with which I could get GeoLite2 working was 1.3.2

2. Swift & Swift Package Manager : 5.0.*

Currently that's the newest version which is supported by JetBrains's CLion, our IDE of choice for all sorts of cool stuff.
The library is supposed to behave properly with newer versions.

Usage

I won't bother providing a usage doc' just yet, because the API will 100% change.
Right now I'm working on hammering it into a production environment, so eventually it'll become stable, and I will bother providing a proper API documentation, and a proper 1.0.0 release will be made.

For now THIS IS ALL WORK IN PROGRESS IN MASTER by design.

How To Clone 🙂

git clone --recurse-submodules instead of the standard git clone, since libmaxminddb is introduced as a git submodule.