Metadata-Version: 2.3
Name: uuid_lib
Version: 0.3.4
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Summary: Python bindings for the UUID library
Keywords: uuid,uuid_lib,uuid1,uuid2,uuid3,uuid4,uuid5,uuid6,uuid7,uuid8
Author-email: intezya <intezya@gmail.com>
Requires-Python: >=3.8
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM


# python uuid-lib

Python library written in rust that lets you use uuid1..8 funcs.


## Available functions

##### **uuid1** - Generated based on a timestamp, a unique node identifier (typically a MAC address), and a random component.

##### **uuid2** - Similar to UUID1 but includes a group or user identifier, making it less popular and rarely used.

##### **uuid3** - Generated using the MD5 hash function based on a namespace and a unique string (e.g., a URL).

##### **uuid4** - A fully random UUID, potentially using cryptographically secure random number generators.

##### **uuid5** - Similar to UUID3 but uses SHA-1 instead of MD5 for hashing unique data and the namespace.

##### **uuid6** - A modified version of UUID1 with the timestamp in sequential order, improving database indexing performance.

##### **uuid7** - Generated based on a timestamp using Unix Epoch format and random bits to ensure uniqueness.

##### **uuid8** - Reserved for custom UUIDs with arbitrary generation schemes, leaving implementation details open. ***Accepts any UUID as bytes (If UUID generated by this lib, use object.bytes proprety)***

## Installation

Install uuid-lib with pip:

```bash
  pip install uuid-lib
```

Install uuid-lib with poetry:

```bash
  poetry install uuid-lib
```


## Usage/Examples

```python
...

from uuid_lib import uuid4, uuid7, uuid8(), ...


user_id = uuid7()  # <- Creates UUID object


# For uuid8(...) 

some_id = uuid8(user_id.bytes)
# or
some_id = uuid8(uuid4().bytes)
```


