Skip to main content

Test PyPI Github Pages PyPI - Python Version License: MIT Stars

fipv

It stands out as a high-speed Python package meticulously built in C language 🤙 It elegantly consolidates core IP address validation functions into a robust C-based implementation, ensuring unparalleled speed compared to alternatives

🎯 Key Features

  • 🚀 Efficiency and Performance: The C-based implementation of fipv guarantees exceptional speed and minimal RAM usage, making it a top choice for high-performance IP address validation in Python applications
  • 📚 Simplified Usage: Explore github pages for easy-to-follow documentation and package references

Available Validators

  • IPv4
  • IPv4 CIDR
  • IPv6
  • IPv6 CIDR

Installation

$ pip3 install fipv

Usage

Basic Validation

import fipv

# Basic C validation functions
print(
    fipv.ipv4("127.0.0.1"),
    fipv.ipv4_cidr("127.0.0.1/44"),
    fipv.ipv6("::1"),
    fipv.ipv6_cidr("::1/129"),
)

# Output
# True False True False

Bulk Validation

import fipv

# Validate bulk IPv4 data
ips = ['127.0.0.1'] * 1000000
valids = [ip for ip in ips if fipv.ipv4(ip)]
print(len(valids))

# Output
# 1000000

Test Benchmark (2021-10-07)

In this test, it was tested validation speed and average RAM usage with different python validators and different data types. Finally results saved to below table

🟢 Valid 🔴 Invalid

Test ID Test Data Count Total Data Data Type Project Validation Duration Avr. RAM Usage (MB)
1 🟢 500K 1M IPv4 validators 0m12,975s 85M
🔴 500K ipaddress 0m2,007s 80M
N/A N/A fipv 0m0,635s 76M
2 🟢 1M 2M IPv4 validators 0m25,682s 151M
🔴 1M ipaddress 0m3,937s 154M
N/A N/A fipv 0m1,193s 150M
3 🟢 500K 1M IPv4 CIDR validators 0m19,721s 96M
🔴 500K ipaddress 0m8,662s 89M
N/A N/A fipv 0m0,909s 77M
4 🟢 1M 2M IPv4 CIDR validators 0m39,457s 179M
🔴 1M ipaddress 0m17,029s 174M
N/A N/A fipv 0m1,779s 174M
5 🟢 500K 1M IPv6 validators 0m12,633s 96M
🔴 500K ipaddress 0m2,802s 92M
N/A N/A fipv 0m0,684s 87M
6 🟢 1M 2M IPv6 validators 0m26,449s 183M
🔴 1M ipaddress 0m5,605s 177M
N/A N/A fipv 0m1,308s 172M
7 🟢 500K 1M IPv6 CIDR validators 0m20,936s 99M
🔴 500K ipaddress 0m10,778s 95M
N/A N/A fipv 0m0,958s 93M
8 🟢 1M 2M IPv6 CIDR validators 0m51,382s 184M
🔴 1M ipaddress 0m25,563s 184M
N/A N/A fipv 0m1,862s 168M

Contact

Blog - erdoganyoksul.com
Mail - erdoganyoksul3@gmail.com

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fipv-1.0.2.tar.gz (8.9 kB view details)

Uploaded Source

File details

Details for the file fipv-1.0.2.tar.gz.

File metadata

  • Download URL: fipv-1.0.2.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for fipv-1.0.2.tar.gz
Algorithm Hash digest
SHA256 dd8ff4f70b6ec33ff159676ad276c65fe4061272e6a6ccf3823a8db1457168be
MD5 186ea6528b238aeda426fbb53b484ad8
BLAKE2b-256 6886c8f9229637ab6980be8d9af7dd6361642e453fcadbff7289ba3a6b9a181e

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.2 This release

1 file

1.0.1

1 file

1.0.0

1 file

0.1.2

1 file

0.1.1

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page