maxminddb-rust 0.3.0__tar.gz → 0.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/.github/workflows/codeql.yml +2 -2
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/.github/workflows/lint.yml +7 -7
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/.github/workflows/release.yml +5 -5
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/.github/workflows/test.yml +2 -2
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/.github/workflows/zizmor.yml +2 -2
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/CHANGELOG.md +38 -1
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/Cargo.lock +43 -75
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/Cargo.toml +4 -3
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/PKG-INFO +74 -54
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/README.md +67 -49
- {maxminddb_rust-0.3.0/examples → maxminddb_rust-0.4.0/benchmarks}/benchmark_batch.py +2 -2
- maxminddb_rust-0.4.0/benchmarks/benchmark_parallel.py +103 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/examples/batch_processing.py +1 -1
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/pyproject.toml +6 -2
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/src/lib.rs +303 -217
- maxminddb_rust-0.4.0/uv.lock +259 -0
- maxminddb_rust-0.3.0/uv.lock +0 -228
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/.githooks/pre-commit +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/.github/dependabot.yml +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/.gitignore +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/.gitmodules +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/CONTRIBUTING.md +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/LICENSE +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/MIGRATION.md +0 -0
- {maxminddb_rust-0.3.0/examples → maxminddb_rust-0.4.0/benchmarks}/benchmark.py +0 -0
- {maxminddb_rust-0.3.0/examples → maxminddb_rust-0.4.0/benchmarks}/benchmark_comprehensive.py +0 -0
- {maxminddb_rust-0.3.0/examples → maxminddb_rust-0.4.0/benchmarks}/benchmark_path.py +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/dev-bin/release.sh +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/examples/basic_usage.py +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/examples/context_manager.py +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/examples/iterator_demo.py +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/maxminddb_rust.pyi +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/precious.toml +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/py.typed +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/tests/__init__.py +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/tests/maxmind/README.md +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/tests/maxmind/UPSTREAM_LICENSE +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/tests/maxmind/__init__.py +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/tests/maxmind/reader_test.py +0 -0
- {maxminddb_rust-0.3.0 → maxminddb_rust-0.4.0}/tests/path_test.py +0 -0
|
@@ -21,7 +21,7 @@ jobs:
|
|
|
21
21
|
|
|
22
22
|
steps:
|
|
23
23
|
- name: Checkout repository
|
|
24
|
-
uses: actions/checkout@
|
|
24
|
+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
25
25
|
with:
|
|
26
26
|
fetch-depth: 2
|
|
27
27
|
persist-credentials: false
|
|
@@ -36,7 +36,7 @@ jobs:
|
|
|
36
36
|
python-version: "3.x"
|
|
37
37
|
|
|
38
38
|
- name: Install Rust
|
|
39
|
-
uses: dtolnay/rust-toolchain@
|
|
39
|
+
uses: dtolnay/rust-toolchain@efa25f7f19611383d5b0ccf2d1c8914531636bf9 # master
|
|
40
40
|
with:
|
|
41
41
|
toolchain: stable
|
|
42
42
|
|
|
@@ -13,12 +13,12 @@ jobs:
|
|
|
13
13
|
name: Clippy
|
|
14
14
|
runs-on: ubuntu-latest
|
|
15
15
|
steps:
|
|
16
|
-
- uses: actions/checkout@
|
|
16
|
+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
17
17
|
with:
|
|
18
18
|
persist-credentials: false
|
|
19
19
|
|
|
20
20
|
- name: Install Rust
|
|
21
|
-
uses: dtolnay/rust-toolchain@
|
|
21
|
+
uses: dtolnay/rust-toolchain@efa25f7f19611383d5b0ccf2d1c8914531636bf9 # master
|
|
22
22
|
with:
|
|
23
23
|
toolchain: stable
|
|
24
24
|
components: clippy
|
|
@@ -30,12 +30,12 @@ jobs:
|
|
|
30
30
|
name: Rustfmt
|
|
31
31
|
runs-on: ubuntu-latest
|
|
32
32
|
steps:
|
|
33
|
-
- uses: actions/checkout@
|
|
33
|
+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
34
34
|
with:
|
|
35
35
|
persist-credentials: false
|
|
36
36
|
|
|
37
37
|
- name: Install Rust
|
|
38
|
-
uses: dtolnay/rust-toolchain@
|
|
38
|
+
uses: dtolnay/rust-toolchain@efa25f7f19611383d5b0ccf2d1c8914531636bf9 # master
|
|
39
39
|
with:
|
|
40
40
|
toolchain: stable
|
|
41
41
|
components: rustfmt
|
|
@@ -47,7 +47,7 @@ jobs:
|
|
|
47
47
|
name: Ruff
|
|
48
48
|
runs-on: ubuntu-latest
|
|
49
49
|
steps:
|
|
50
|
-
- uses: actions/checkout@
|
|
50
|
+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
51
51
|
with:
|
|
52
52
|
persist-credentials: false
|
|
53
53
|
|
|
@@ -64,12 +64,12 @@ jobs:
|
|
|
64
64
|
name: Prettier
|
|
65
65
|
runs-on: ubuntu-latest
|
|
66
66
|
steps:
|
|
67
|
-
- uses: actions/checkout@
|
|
67
|
+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
68
68
|
with:
|
|
69
69
|
persist-credentials: false
|
|
70
70
|
|
|
71
71
|
- name: Setup Node.js
|
|
72
|
-
uses: actions/setup-node@
|
|
72
|
+
uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
|
|
73
73
|
with:
|
|
74
74
|
node-version: "20"
|
|
75
75
|
|
|
@@ -37,7 +37,7 @@ jobs:
|
|
|
37
37
|
python_versions: "3.11 3.12 3.13 3.14"
|
|
38
38
|
|
|
39
39
|
steps:
|
|
40
|
-
- uses: actions/checkout@
|
|
40
|
+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
41
41
|
with:
|
|
42
42
|
persist-credentials: false
|
|
43
43
|
|
|
@@ -51,7 +51,7 @@ jobs:
|
|
|
51
51
|
|
|
52
52
|
- name: Set up Zig
|
|
53
53
|
if: runner.os == 'Windows'
|
|
54
|
-
uses: mlugg/setup-zig@
|
|
54
|
+
uses: mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29 # v2.2.1
|
|
55
55
|
|
|
56
56
|
- name: Set up QEMU
|
|
57
57
|
if: runner.os == 'Linux' && matrix.target == 'aarch64'
|
|
@@ -60,7 +60,7 @@ jobs:
|
|
|
60
60
|
platforms: arm64
|
|
61
61
|
|
|
62
62
|
- name: Build wheels
|
|
63
|
-
uses: PyO3/maturin-action@
|
|
63
|
+
uses: PyO3/maturin-action@b1bd829e37fef14c63f19162034228a2f3dc1021 # v1.50.0
|
|
64
64
|
with:
|
|
65
65
|
target: ${{ matrix.target }}
|
|
66
66
|
args: --release --out dist --interpreter ${{ matrix.python_versions || '3.9 3.10 3.11 3.12 3.13 3.14' }}
|
|
@@ -77,12 +77,12 @@ jobs:
|
|
|
77
77
|
name: Build source distribution
|
|
78
78
|
runs-on: ubuntu-latest
|
|
79
79
|
steps:
|
|
80
|
-
- uses: actions/checkout@
|
|
80
|
+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
81
81
|
with:
|
|
82
82
|
persist-credentials: false
|
|
83
83
|
|
|
84
84
|
- name: Build sdist
|
|
85
|
-
uses: PyO3/maturin-action@
|
|
85
|
+
uses: PyO3/maturin-action@b1bd829e37fef14c63f19162034228a2f3dc1021 # v1.50.0
|
|
86
86
|
with:
|
|
87
87
|
command: sdist
|
|
88
88
|
args: --out dist
|
|
@@ -21,7 +21,7 @@ jobs:
|
|
|
21
21
|
os: [ubuntu-latest, macos-latest, windows-latest]
|
|
22
22
|
|
|
23
23
|
steps:
|
|
24
|
-
- uses: actions/checkout@
|
|
24
|
+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
25
25
|
with:
|
|
26
26
|
persist-credentials: false
|
|
27
27
|
submodules: recursive
|
|
@@ -32,7 +32,7 @@ jobs:
|
|
|
32
32
|
python-version: ${{ matrix.python-version }}
|
|
33
33
|
|
|
34
34
|
- name: Install Rust
|
|
35
|
-
uses: dtolnay/rust-toolchain@
|
|
35
|
+
uses: dtolnay/rust-toolchain@efa25f7f19611383d5b0ccf2d1c8914531636bf9 # master
|
|
36
36
|
with:
|
|
37
37
|
toolchain: stable
|
|
38
38
|
|
|
@@ -17,9 +17,9 @@ jobs:
|
|
|
17
17
|
security-events: write
|
|
18
18
|
steps:
|
|
19
19
|
- name: Checkout repository
|
|
20
|
-
uses: actions/checkout@
|
|
20
|
+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
21
21
|
with:
|
|
22
22
|
persist-credentials: false
|
|
23
23
|
|
|
24
24
|
- name: Run zizmor
|
|
25
|
-
uses: zizmorcore/zizmor-action@
|
|
25
|
+
uses: zizmorcore/zizmor-action@0dce2577a4760a2749d8cfb7a84b7d5585ebcb7d # v0.5.0
|
|
@@ -5,6 +5,40 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.4.0] - 2026-02-21
|
|
9
|
+
|
|
10
|
+
### Breaking
|
|
11
|
+
|
|
12
|
+
- `Reader.__iter__` now yields `(ipaddress.IPv4Network | ipaddress.IPv6Network, dict)`
|
|
13
|
+
tuples instead of `(str, dict)`. Update callers that expect string networks
|
|
14
|
+
to handle network objects directly, or convert with `str(network)`.
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- Consolidated benchmark scripts under `benchmarks/` and removed
|
|
19
|
+
`examples/benchmark.py`.
|
|
20
|
+
- Updated benchmark documentation in `README.md` to match the consolidated
|
|
21
|
+
benchmark layout.
|
|
22
|
+
- Simplified internal IP parsing and iterator code paths to reduce duplication
|
|
23
|
+
and improve maintainability.
|
|
24
|
+
- Refactored database opening and reader initialization flow:
|
|
25
|
+
- centralized open-mode parsing/validation
|
|
26
|
+
- unified mmap vs memory reader loading
|
|
27
|
+
- centralized metadata conversion
|
|
28
|
+
- Dependency updates:
|
|
29
|
+
- upgraded `PyO3` from 0.27 to 0.28
|
|
30
|
+
- upgraded `maxminddb` from 0.27.1 to 0.27.3
|
|
31
|
+
- added `rustc-hash`
|
|
32
|
+
|
|
33
|
+
### Performance
|
|
34
|
+
|
|
35
|
+
- Improved `get()` and `get_with_prefix_len()` throughput by optimizing decode
|
|
36
|
+
map-key caching:
|
|
37
|
+
- switched to a faster key cache strategy for Python map keys
|
|
38
|
+
- reduced key insertion overhead in the hot decode path
|
|
39
|
+
- Simplified lookup-path internals in performance-neutral ways to reduce
|
|
40
|
+
complexity without regressions.
|
|
41
|
+
|
|
8
42
|
## [0.3.0] - 2025-12-18
|
|
9
43
|
|
|
10
44
|
### Added
|
|
@@ -101,5 +135,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
101
135
|
- Python 3.8+
|
|
102
136
|
- CPython implementation
|
|
103
137
|
|
|
104
|
-
[Unreleased]: https://github.com/oschwald/maxminddb-rust-python/compare/v0.
|
|
138
|
+
[Unreleased]: https://github.com/oschwald/maxminddb-rust-python/compare/v0.4.0...HEAD
|
|
139
|
+
[0.4.0]: https://github.com/oschwald/maxminddb-rust-python/compare/v0.3.0...v0.4.0
|
|
140
|
+
[0.3.0]: https://github.com/oschwald/maxminddb-rust-python/compare/v0.2.0...v0.3.0
|
|
141
|
+
[0.2.0]: https://github.com/oschwald/maxminddb-rust-python/compare/v0.1.0...v0.2.0
|
|
105
142
|
[0.1.0]: https://github.com/oschwald/maxminddb-rust-python/releases/tag/v0.1.0
|
|
@@ -2,17 +2,11 @@
|
|
|
2
2
|
# It is not intended for manual editing.
|
|
3
3
|
version = 4
|
|
4
4
|
|
|
5
|
-
[[package]]
|
|
6
|
-
name = "autocfg"
|
|
7
|
-
version = "1.5.0"
|
|
8
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
9
|
-
checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8"
|
|
10
|
-
|
|
11
5
|
[[package]]
|
|
12
6
|
name = "cc"
|
|
13
|
-
version = "1.2.
|
|
7
|
+
version = "1.2.56"
|
|
14
8
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
15
|
-
checksum = "
|
|
9
|
+
checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2"
|
|
16
10
|
dependencies = [
|
|
17
11
|
"find-msvc-tools",
|
|
18
12
|
"shlex",
|
|
@@ -20,9 +14,9 @@ dependencies = [
|
|
|
20
14
|
|
|
21
15
|
[[package]]
|
|
22
16
|
name = "find-msvc-tools"
|
|
23
|
-
version = "0.1.
|
|
17
|
+
version = "0.1.9"
|
|
24
18
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
25
|
-
checksum = "
|
|
19
|
+
checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
|
|
26
20
|
|
|
27
21
|
[[package]]
|
|
28
22
|
name = "heck"
|
|
@@ -30,15 +24,6 @@ version = "0.5.0"
|
|
|
30
24
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
31
25
|
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
|
32
26
|
|
|
33
|
-
[[package]]
|
|
34
|
-
name = "indoc"
|
|
35
|
-
version = "2.0.7"
|
|
36
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
37
|
-
checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706"
|
|
38
|
-
dependencies = [
|
|
39
|
-
"rustversion",
|
|
40
|
-
]
|
|
41
|
-
|
|
42
27
|
[[package]]
|
|
43
28
|
name = "ipnetwork"
|
|
44
29
|
version = "0.21.1"
|
|
@@ -47,9 +32,9 @@ checksum = "cf370abdafd54d13e54a620e8c3e1145f28e46cc9d704bc6d94414559df41763"
|
|
|
47
32
|
|
|
48
33
|
[[package]]
|
|
49
34
|
name = "libc"
|
|
50
|
-
version = "0.2.
|
|
35
|
+
version = "0.2.182"
|
|
51
36
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
52
|
-
checksum = "
|
|
37
|
+
checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112"
|
|
53
38
|
|
|
54
39
|
[[package]]
|
|
55
40
|
name = "log"
|
|
@@ -59,9 +44,9 @@ checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897"
|
|
|
59
44
|
|
|
60
45
|
[[package]]
|
|
61
46
|
name = "maxminddb"
|
|
62
|
-
version = "0.27.
|
|
47
|
+
version = "0.27.3"
|
|
63
48
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
64
|
-
checksum = "
|
|
49
|
+
checksum = "76371bd37ce742f8954daabd0fde7f1594ee43ac2200e20c003ba5c3d65e2192"
|
|
65
50
|
dependencies = [
|
|
66
51
|
"ipnetwork",
|
|
67
52
|
"log",
|
|
@@ -73,39 +58,31 @@ dependencies = [
|
|
|
73
58
|
|
|
74
59
|
[[package]]
|
|
75
60
|
name = "maxminddb-rust"
|
|
76
|
-
version = "0.
|
|
61
|
+
version = "0.4.0"
|
|
77
62
|
dependencies = [
|
|
78
63
|
"ipnetwork",
|
|
79
64
|
"maxminddb",
|
|
80
65
|
"memmap2",
|
|
81
66
|
"pyo3",
|
|
67
|
+
"rustc-hash",
|
|
82
68
|
"serde",
|
|
83
69
|
]
|
|
84
70
|
|
|
85
71
|
[[package]]
|
|
86
72
|
name = "memchr"
|
|
87
|
-
version = "2.
|
|
73
|
+
version = "2.8.0"
|
|
88
74
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
89
|
-
checksum = "
|
|
75
|
+
checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79"
|
|
90
76
|
|
|
91
77
|
[[package]]
|
|
92
78
|
name = "memmap2"
|
|
93
|
-
version = "0.9.
|
|
79
|
+
version = "0.9.10"
|
|
94
80
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
95
|
-
checksum = "
|
|
81
|
+
checksum = "714098028fe011992e1c3962653c96b2d578c4b4bce9036e15ff220319b1e0e3"
|
|
96
82
|
dependencies = [
|
|
97
83
|
"libc",
|
|
98
84
|
]
|
|
99
85
|
|
|
100
|
-
[[package]]
|
|
101
|
-
name = "memoffset"
|
|
102
|
-
version = "0.9.1"
|
|
103
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
104
|
-
checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
|
|
105
|
-
dependencies = [
|
|
106
|
-
"autocfg",
|
|
107
|
-
]
|
|
108
|
-
|
|
109
86
|
[[package]]
|
|
110
87
|
name = "once_cell"
|
|
111
88
|
version = "1.21.3"
|
|
@@ -114,41 +91,38 @@ checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
|
|
|
114
91
|
|
|
115
92
|
[[package]]
|
|
116
93
|
name = "portable-atomic"
|
|
117
|
-
version = "1.
|
|
94
|
+
version = "1.13.1"
|
|
118
95
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
119
|
-
checksum = "
|
|
96
|
+
checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49"
|
|
120
97
|
|
|
121
98
|
[[package]]
|
|
122
99
|
name = "proc-macro2"
|
|
123
|
-
version = "1.0.
|
|
100
|
+
version = "1.0.106"
|
|
124
101
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
125
|
-
checksum = "
|
|
102
|
+
checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
|
|
126
103
|
dependencies = [
|
|
127
104
|
"unicode-ident",
|
|
128
105
|
]
|
|
129
106
|
|
|
130
107
|
[[package]]
|
|
131
108
|
name = "pyo3"
|
|
132
|
-
version = "0.
|
|
109
|
+
version = "0.28.2"
|
|
133
110
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
134
|
-
checksum = "
|
|
111
|
+
checksum = "cf85e27e86080aafd5a22eae58a162e133a589551542b3e5cee4beb27e54f8e1"
|
|
135
112
|
dependencies = [
|
|
136
|
-
"indoc",
|
|
137
113
|
"libc",
|
|
138
|
-
"memoffset",
|
|
139
114
|
"once_cell",
|
|
140
115
|
"portable-atomic",
|
|
141
116
|
"pyo3-build-config",
|
|
142
117
|
"pyo3-ffi",
|
|
143
118
|
"pyo3-macros",
|
|
144
|
-
"unindent",
|
|
145
119
|
]
|
|
146
120
|
|
|
147
121
|
[[package]]
|
|
148
122
|
name = "pyo3-build-config"
|
|
149
|
-
version = "0.
|
|
123
|
+
version = "0.28.2"
|
|
150
124
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
151
|
-
checksum = "
|
|
125
|
+
checksum = "8bf94ee265674bf76c09fa430b0e99c26e319c945d96ca0d5a8215f31bf81cf7"
|
|
152
126
|
dependencies = [
|
|
153
127
|
"python3-dll-a",
|
|
154
128
|
"target-lexicon",
|
|
@@ -156,9 +130,9 @@ dependencies = [
|
|
|
156
130
|
|
|
157
131
|
[[package]]
|
|
158
132
|
name = "pyo3-ffi"
|
|
159
|
-
version = "0.
|
|
133
|
+
version = "0.28.2"
|
|
160
134
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
161
|
-
checksum = "
|
|
135
|
+
checksum = "491aa5fc66d8059dd44a75f4580a2962c1862a1c2945359db36f6c2818b748dc"
|
|
162
136
|
dependencies = [
|
|
163
137
|
"libc",
|
|
164
138
|
"pyo3-build-config",
|
|
@@ -166,9 +140,9 @@ dependencies = [
|
|
|
166
140
|
|
|
167
141
|
[[package]]
|
|
168
142
|
name = "pyo3-macros"
|
|
169
|
-
version = "0.
|
|
143
|
+
version = "0.28.2"
|
|
170
144
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
171
|
-
checksum = "
|
|
145
|
+
checksum = "f5d671734e9d7a43449f8480f8b38115df67bef8d21f76837fa75ee7aaa5e52e"
|
|
172
146
|
dependencies = [
|
|
173
147
|
"proc-macro2",
|
|
174
148
|
"pyo3-macros-backend",
|
|
@@ -178,9 +152,9 @@ dependencies = [
|
|
|
178
152
|
|
|
179
153
|
[[package]]
|
|
180
154
|
name = "pyo3-macros-backend"
|
|
181
|
-
version = "0.
|
|
155
|
+
version = "0.28.2"
|
|
182
156
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
183
|
-
checksum = "
|
|
157
|
+
checksum = "22faaa1ce6c430a1f71658760497291065e6450d7b5dc2bcf254d49f66ee700a"
|
|
184
158
|
dependencies = [
|
|
185
159
|
"heck",
|
|
186
160
|
"proc-macro2",
|
|
@@ -200,18 +174,18 @@ dependencies = [
|
|
|
200
174
|
|
|
201
175
|
[[package]]
|
|
202
176
|
name = "quote"
|
|
203
|
-
version = "1.0.
|
|
177
|
+
version = "1.0.44"
|
|
204
178
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
205
|
-
checksum = "
|
|
179
|
+
checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4"
|
|
206
180
|
dependencies = [
|
|
207
181
|
"proc-macro2",
|
|
208
182
|
]
|
|
209
183
|
|
|
210
184
|
[[package]]
|
|
211
|
-
name = "
|
|
212
|
-
version = "1.
|
|
185
|
+
name = "rustc-hash"
|
|
186
|
+
version = "2.1.1"
|
|
213
187
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
214
|
-
checksum = "
|
|
188
|
+
checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d"
|
|
215
189
|
|
|
216
190
|
[[package]]
|
|
217
191
|
name = "serde"
|
|
@@ -257,9 +231,9 @@ checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e"
|
|
|
257
231
|
|
|
258
232
|
[[package]]
|
|
259
233
|
name = "syn"
|
|
260
|
-
version = "2.0.
|
|
234
|
+
version = "2.0.117"
|
|
261
235
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
262
|
-
checksum = "
|
|
236
|
+
checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99"
|
|
263
237
|
dependencies = [
|
|
264
238
|
"proc-macro2",
|
|
265
239
|
"quote",
|
|
@@ -268,24 +242,24 @@ dependencies = [
|
|
|
268
242
|
|
|
269
243
|
[[package]]
|
|
270
244
|
name = "target-lexicon"
|
|
271
|
-
version = "0.13.
|
|
245
|
+
version = "0.13.5"
|
|
272
246
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
273
|
-
checksum = "
|
|
247
|
+
checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
|
|
274
248
|
|
|
275
249
|
[[package]]
|
|
276
250
|
name = "thiserror"
|
|
277
|
-
version = "2.0.
|
|
251
|
+
version = "2.0.18"
|
|
278
252
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
279
|
-
checksum = "
|
|
253
|
+
checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4"
|
|
280
254
|
dependencies = [
|
|
281
255
|
"thiserror-impl",
|
|
282
256
|
]
|
|
283
257
|
|
|
284
258
|
[[package]]
|
|
285
259
|
name = "thiserror-impl"
|
|
286
|
-
version = "2.0.
|
|
260
|
+
version = "2.0.18"
|
|
287
261
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
288
|
-
checksum = "
|
|
262
|
+
checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5"
|
|
289
263
|
dependencies = [
|
|
290
264
|
"proc-macro2",
|
|
291
265
|
"quote",
|
|
@@ -294,12 +268,6 @@ dependencies = [
|
|
|
294
268
|
|
|
295
269
|
[[package]]
|
|
296
270
|
name = "unicode-ident"
|
|
297
|
-
version = "1.0.
|
|
298
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
299
|
-
checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5"
|
|
300
|
-
|
|
301
|
-
[[package]]
|
|
302
|
-
name = "unindent"
|
|
303
|
-
version = "0.2.4"
|
|
271
|
+
version = "1.0.24"
|
|
304
272
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
305
|
-
checksum = "
|
|
273
|
+
checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "maxminddb-rust"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.4.0"
|
|
4
4
|
edition = "2021"
|
|
5
5
|
authors = ["Gregory Oschwald <oschwald@gmail.com>"]
|
|
6
6
|
description = "Rust-based Python binding for MaxMind DB - high-performance alternative to maxminddb"
|
|
@@ -14,9 +14,10 @@ crate-type = ["cdylib"]
|
|
|
14
14
|
|
|
15
15
|
[dependencies]
|
|
16
16
|
ipnetwork = "0.21"
|
|
17
|
-
maxminddb = { version = "0.27.
|
|
17
|
+
maxminddb = { version = "0.27.3", features = ["simdutf8"] }
|
|
18
18
|
memmap2 = "0.9"
|
|
19
|
-
pyo3 = { version = "0.
|
|
19
|
+
pyo3 = { version = "0.28.2", features = ["extension-module", "generate-import-lib"] }
|
|
20
|
+
rustc-hash = "2"
|
|
20
21
|
serde = "1.0"
|
|
21
22
|
|
|
22
23
|
[features]
|