mapper-lib


Namemapper-lib JSON
Version 1.0.6 PyPI version JSON
download
home_pagehttps://github.com/compre-sua-peca/csp_mapper
SummaryUma biblioteca C++ para mapeamento e transformação de dados
upload_time2025-08-13 11:17:14
maintainerNone
docs_urlNone
authorGustavo de Oliveira
requires_python>=3.7
licenseMIT
keywords mapping data transformation c++ performance
VCS
bugtrack_url
requirements pybind11 setuptools wheel build
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Mapper Lib

A high-performance Python library for data mapping and transformation, built with C++ extensions for maximum efficiency.

## 📋 Description

**Mapper Lib** is a specialized library for transforming and mapping complex JSON data structures. It provides functionality for:

- **Flattening**: Convert nested dictionaries into flat structures
- **Field Mapping**: Map fields between different formats using JSON configurations
- **High Performance**: C++ implementation for fast data transformation operations

## 🚀 Features

- ⚡ **High Performance**: C++ implementation with Python bindings
- 🔧 **Configurable**: Mapping based on JSON configuration files
- 🐍 **Python Native**: Simple and intuitive API for Python
- 🎯 **Flexible**: Support for customizable separators and parent keys
- 🏗️ **Cross-Platform**: Support for Windows and Linux

## 📦 Installation

### Prerequisites

- Python 3.7+
- C++ compiler with C++17 support
- pybind11

### Installation via pip

```bash
pip install -r requirements.txt
pip install -e .
```

### Manual installation

```bash
# Clone the repository
git clone https://github.com/compre-sua-peca/csp_mapper.git
cd csp_mapper

# Install dependencies
pip install -r requirements.txt

# Compile and install
python setup.py build_ext --inplace
python setup.py install
```

## 💻 Usage Examples

### 📝 How Configuration Works

The library **reads JSON configuration files** from the file system. The file must contain a dictionary where each key represents a "trigger" that defines how to map the fields.

**Typical configuration file structure:**
```json
{
    "trigger_1": {
        "output_field_1": "input.field.path.1",
        "output_field_2": "input.field.path.2"
    },
    "trigger_2": {
        "another_field": "another.field.path"
    }
}
```

### Example 1: Basic Mapping

**First, create the configuration file `mapping_config.json`:**
```json
{
    "user_mapping": {
        "nome": "user.personal.name",
        "idade": "user.personal.age",
        "endereco": "user.address.street",
        "cidade": "user.address.city",
        "pedido_id": "order.id",
        "valor_total": "order.total"
    }
}
```

**Then, use Python:**
```python
from mapper import mapper

# Create mapper instance
mapper_instance = mapper(sep=".", parent_key="data")

# Nested input data
input_data = {
    "user": {
        "personal": {
            "name": "João Silva",
            "age": 30
        },
        "address": {
            "street": "Rua das Flores",
            "city": "São Paulo"
        }
    },
    "order": {
        "id": "12345",
        "total": 99.99
    }
}

# Mapping using configuration file
result = mapper_instance.map_dict(
    input_dict=input_data,
    config_path="mapping_config.json",
    trigger="user_mapping"
)
print(result)
```

### Example 2: Mapping with Configuration File

**config_file.json:**
```json
{
    "user_mapping": {
        "nome_completo": "user.personal.name",
        "idade_usuario": "user.personal.age",
        "endereco_completo": "user.address.street",
        "cidade_usuario": "user.address.city"
    },
    "order_mapping": {
        "id_pedido": "order.id",
        "valor": "order.total"
    }
}
```

**Python:**
```python
# Mapping using configuration file
result = mapper_instance.map_dict(
    input_dict=input_data,
    config_path="config_file.json",
    trigger="user_mapping"
)

print(result)
```

**Output:**
```json
{
    "nome_completo": "João Silva",
    "idade_usuario": 30,
    "endereco_completo": "Rua das Flores",
    "cidade_usuario": "São Paulo"
}
```

### Example 3: Mapping without Trigger (Complete Configuration)

```python
# Mapping using entire configuration (without specific trigger)
result = mapper_instance.map_dict(
    input_dict=input_data,
    config_path="config_file.json"
    # trigger=None (default)
)

print(result)
```

**Output:**
```json
{
    "user_mapping": {
        "nome_completo": "João Silva",
        "idade_usuario": 30,
        "endereco_completo": "Rua das Flores",
        "cidade_usuario": "São Paulo"
    },
    "order_mapping": {
        "id_pedido": "12345",
        "valor": 99.99
    }
}
```

### Example 4: Different Separators

```python
# Use dot as separator
mapper_dot = mapper(sep=".", parent_key="")
result_dot = mapper_dot.map_dict(input_data, "config.json", "user_mapping")

# Use underscore as separator
mapper_underscore = mapper(sep="_", parent_key="")
result_underscore = mapper_underscore.map_dict(input_data, "config.json", "user_mapping")

# Use slash as separator
mapper_bar = mapper(sep="/", parent_key="")
result_bar = mapper_bar.map_dict(input_data, "config.json", "user_mapping")

print("Result with dot:", result_dot)
print("Result with underscore:", result_underscore)
print("Result with slash:", result_bar)
```

### Example 5: Mapping with Parent Key

```python
# Mapper with parent key "api_data"
mapper_with_parent = mapper(sep=".", parent_key="api_data")

result_with_parent = mapper_with_parent.map_dict(input_data, "config.json", "user_mapping")
print("Result with parent key 'api_data':")
print(result_with_parent)
```

## 🔧 API Reference

### Class `mapper`

#### Constructor
```python
mapper(sep: str = "|", parent_key: str = "")
```

**Parameters:**
- `sep`: Separator to concatenate nested keys (default: "|")
- `parent_key`: Parent key to prefix all keys (default: "")

#### Methods

##### `map_dict(input_dict: dict, config_path: str, trigger: str = None) -> dict`
Main method that combines flattening and field mapping.

**Parameters:**
- `input_dict`: Input dictionary to be mapped
- `config_path`: Path to the JSON configuration file
- `trigger`: Specific key in the configuration to be used (optional)

**Returns:**
- Dictionary with mapped data according to the configuration

**Note:** This method internally uses the private methods `_flatten_dict()` and `_mapping_fields()` to perform processing, but the user only needs to know this public method.

## 🛠️ Development

### Compilation

```bash
# Compile C++ extensions
python setup.py build_ext --inplace

# Install in development mode
pip install -e .
```

## 📄 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## 👥 Contributing

Contributions are welcome! Please feel free to:

1. Fork the project
2. Create a feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

## 📞 Support

For support and questions:

- **Author:** Gustavo de Oliveira
- **Email:** devops15@compresuapeca.com.br
- **Repository:** https://github.com/compre-sua-peca/csp_mapper

## 🔄 Version History

- **v1.0.6** - Current version with cross-platform support
- **v1.0.1** - Performance improvements
- **v1.0.0** - Initial release

---

⭐ If this project was useful to you, consider giving it a star in the repository!

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/compre-sua-peca/csp_mapper",
    "name": "mapper-lib",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "Compre Sua Pe\u00e7a <devops4@compresuapeca.com.br>",
    "keywords": "mapping, data transformation, c++, performance",
    "author": "Gustavo de Oliveira",
    "author_email": "Gustavo de Oliveira <devops15@compresuapeca.com.br>",
    "download_url": null,
    "platform": null,
    "description": "# Mapper Lib\n\nA high-performance Python library for data mapping and transformation, built with C++ extensions for maximum efficiency.\n\n## \ud83d\udccb Description\n\n**Mapper Lib** is a specialized library for transforming and mapping complex JSON data structures. It provides functionality for:\n\n- **Flattening**: Convert nested dictionaries into flat structures\n- **Field Mapping**: Map fields between different formats using JSON configurations\n- **High Performance**: C++ implementation for fast data transformation operations\n\n## \ud83d\ude80 Features\n\n- \u26a1 **High Performance**: C++ implementation with Python bindings\n- \ud83d\udd27 **Configurable**: Mapping based on JSON configuration files\n- \ud83d\udc0d **Python Native**: Simple and intuitive API for Python\n- \ud83c\udfaf **Flexible**: Support for customizable separators and parent keys\n- \ud83c\udfd7\ufe0f **Cross-Platform**: Support for Windows and Linux\n\n## \ud83d\udce6 Installation\n\n### Prerequisites\n\n- Python 3.7+\n- C++ compiler with C++17 support\n- pybind11\n\n### Installation via pip\n\n```bash\npip install -r requirements.txt\npip install -e .\n```\n\n### Manual installation\n\n```bash\n# Clone the repository\ngit clone https://github.com/compre-sua-peca/csp_mapper.git\ncd csp_mapper\n\n# Install dependencies\npip install -r requirements.txt\n\n# Compile and install\npython setup.py build_ext --inplace\npython setup.py install\n```\n\n## \ud83d\udcbb Usage Examples\n\n### \ud83d\udcdd How Configuration Works\n\nThe library **reads JSON configuration files** from the file system. The file must contain a dictionary where each key represents a \"trigger\" that defines how to map the fields.\n\n**Typical configuration file structure:**\n```json\n{\n    \"trigger_1\": {\n        \"output_field_1\": \"input.field.path.1\",\n        \"output_field_2\": \"input.field.path.2\"\n    },\n    \"trigger_2\": {\n        \"another_field\": \"another.field.path\"\n    }\n}\n```\n\n### Example 1: Basic Mapping\n\n**First, create the configuration file `mapping_config.json`:**\n```json\n{\n    \"user_mapping\": {\n        \"nome\": \"user.personal.name\",\n        \"idade\": \"user.personal.age\",\n        \"endereco\": \"user.address.street\",\n        \"cidade\": \"user.address.city\",\n        \"pedido_id\": \"order.id\",\n        \"valor_total\": \"order.total\"\n    }\n}\n```\n\n**Then, use Python:**\n```python\nfrom mapper import mapper\n\n# Create mapper instance\nmapper_instance = mapper(sep=\".\", parent_key=\"data\")\n\n# Nested input data\ninput_data = {\n    \"user\": {\n        \"personal\": {\n            \"name\": \"Jo\u00e3o Silva\",\n            \"age\": 30\n        },\n        \"address\": {\n            \"street\": \"Rua das Flores\",\n            \"city\": \"S\u00e3o Paulo\"\n        }\n    },\n    \"order\": {\n        \"id\": \"12345\",\n        \"total\": 99.99\n    }\n}\n\n# Mapping using configuration file\nresult = mapper_instance.map_dict(\n    input_dict=input_data,\n    config_path=\"mapping_config.json\",\n    trigger=\"user_mapping\"\n)\nprint(result)\n```\n\n### Example 2: Mapping with Configuration File\n\n**config_file.json:**\n```json\n{\n    \"user_mapping\": {\n        \"nome_completo\": \"user.personal.name\",\n        \"idade_usuario\": \"user.personal.age\",\n        \"endereco_completo\": \"user.address.street\",\n        \"cidade_usuario\": \"user.address.city\"\n    },\n    \"order_mapping\": {\n        \"id_pedido\": \"order.id\",\n        \"valor\": \"order.total\"\n    }\n}\n```\n\n**Python:**\n```python\n# Mapping using configuration file\nresult = mapper_instance.map_dict(\n    input_dict=input_data,\n    config_path=\"config_file.json\",\n    trigger=\"user_mapping\"\n)\n\nprint(result)\n```\n\n**Output:**\n```json\n{\n    \"nome_completo\": \"Jo\u00e3o Silva\",\n    \"idade_usuario\": 30,\n    \"endereco_completo\": \"Rua das Flores\",\n    \"cidade_usuario\": \"S\u00e3o Paulo\"\n}\n```\n\n### Example 3: Mapping without Trigger (Complete Configuration)\n\n```python\n# Mapping using entire configuration (without specific trigger)\nresult = mapper_instance.map_dict(\n    input_dict=input_data,\n    config_path=\"config_file.json\"\n    # trigger=None (default)\n)\n\nprint(result)\n```\n\n**Output:**\n```json\n{\n    \"user_mapping\": {\n        \"nome_completo\": \"Jo\u00e3o Silva\",\n        \"idade_usuario\": 30,\n        \"endereco_completo\": \"Rua das Flores\",\n        \"cidade_usuario\": \"S\u00e3o Paulo\"\n    },\n    \"order_mapping\": {\n        \"id_pedido\": \"12345\",\n        \"valor\": 99.99\n    }\n}\n```\n\n### Example 4: Different Separators\n\n```python\n# Use dot as separator\nmapper_dot = mapper(sep=\".\", parent_key=\"\")\nresult_dot = mapper_dot.map_dict(input_data, \"config.json\", \"user_mapping\")\n\n# Use underscore as separator\nmapper_underscore = mapper(sep=\"_\", parent_key=\"\")\nresult_underscore = mapper_underscore.map_dict(input_data, \"config.json\", \"user_mapping\")\n\n# Use slash as separator\nmapper_bar = mapper(sep=\"/\", parent_key=\"\")\nresult_bar = mapper_bar.map_dict(input_data, \"config.json\", \"user_mapping\")\n\nprint(\"Result with dot:\", result_dot)\nprint(\"Result with underscore:\", result_underscore)\nprint(\"Result with slash:\", result_bar)\n```\n\n### Example 5: Mapping with Parent Key\n\n```python\n# Mapper with parent key \"api_data\"\nmapper_with_parent = mapper(sep=\".\", parent_key=\"api_data\")\n\nresult_with_parent = mapper_with_parent.map_dict(input_data, \"config.json\", \"user_mapping\")\nprint(\"Result with parent key 'api_data':\")\nprint(result_with_parent)\n```\n\n## \ud83d\udd27 API Reference\n\n### Class `mapper`\n\n#### Constructor\n```python\nmapper(sep: str = \"|\", parent_key: str = \"\")\n```\n\n**Parameters:**\n- `sep`: Separator to concatenate nested keys (default: \"|\")\n- `parent_key`: Parent key to prefix all keys (default: \"\")\n\n#### Methods\n\n##### `map_dict(input_dict: dict, config_path: str, trigger: str = None) -> dict`\nMain method that combines flattening and field mapping.\n\n**Parameters:**\n- `input_dict`: Input dictionary to be mapped\n- `config_path`: Path to the JSON configuration file\n- `trigger`: Specific key in the configuration to be used (optional)\n\n**Returns:**\n- Dictionary with mapped data according to the configuration\n\n**Note:** This method internally uses the private methods `_flatten_dict()` and `_mapping_fields()` to perform processing, but the user only needs to know this public method.\n\n## \ud83d\udee0\ufe0f Development\n\n### Compilation\n\n```bash\n# Compile C++ extensions\npython setup.py build_ext --inplace\n\n# Install in development mode\npip install -e .\n```\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## \ud83d\udc65 Contributing\n\nContributions are welcome! Please feel free to:\n\n1. Fork the project\n2. Create a feature branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n## \ud83d\udcde Support\n\nFor support and questions:\n\n- **Author:** Gustavo de Oliveira\n- **Email:** devops15@compresuapeca.com.br\n- **Repository:** https://github.com/compre-sua-peca/csp_mapper\n\n## \ud83d\udd04 Version History\n\n- **v1.0.6** - Current version with cross-platform support\n- **v1.0.1** - Performance improvements\n- **v1.0.0** - Initial release\n\n---\n\n\u2b50 If this project was useful to you, consider giving it a star in the repository!\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Uma biblioteca C++ para mapeamento e transforma\u00e7\u00e3o de dados",
    "version": "1.0.6",
    "project_urls": {
        "Homepage": "https://github.com/compre-sua-peca/csp_mapper",
        "Issues": "https://github.com/compre-sua-peca/csp_mapper/issues",
        "Repository": "https://github.com/compre-sua-peca/csp_mapper"
    },
    "split_keywords": [
        "mapping",
        " data transformation",
        " c++",
        " performance"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2c046f044c5509e97aadc4fe16a36c52454fa8561ef19c1aeb99b146d1712906",
                "md5": "a1126bfa9d0c4e909514a43c5f642321",
                "sha256": "428ff2881787540d324dabebdcde8dc7434b49de6059de0b9cb8313cdba36fcf"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a1126bfa9d0c4e909514a43c5f642321",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 818416,
            "upload_time": "2025-08-13T11:17:14",
            "upload_time_iso_8601": "2025-08-13T11:17:14.711964Z",
            "url": "https://files.pythonhosted.org/packages/2c/04/6f044c5509e97aadc4fe16a36c52454fa8561ef19c1aeb99b146d1712906/mapper_lib-1.0.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4b9a1fdc96e3b56688c54e1018d03faf086f4e5507d70e15ba7ac0f9494c28fd",
                "md5": "8664c95d6788362814d22c2b3327733d",
                "sha256": "ab4eb6ea596abae184b7d320781089df990e570dd87b3881982adaba53f1b59a"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp310-cp310-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "8664c95d6788362814d22c2b3327733d",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 1842683,
            "upload_time": "2025-08-13T11:17:16",
            "upload_time_iso_8601": "2025-08-13T11:17:16.718763Z",
            "url": "https://files.pythonhosted.org/packages/4b/9a/1fdc96e3b56688c54e1018d03faf086f4e5507d70e15ba7ac0f9494c28fd/mapper_lib-1.0.6-cp310-cp310-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8029525f40e4e50f8924ac962061c1b7a022e5b108ac237dd55679576465b956",
                "md5": "2f6c864f82ccae8c01ea6a498a4e23a7",
                "sha256": "b3cdf88084d1b13b3dbd476c4ed8a49cf25955970788c884668d02c78af50045"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp310-cp310-win32.whl",
            "has_sig": false,
            "md5_digest": "2f6c864f82ccae8c01ea6a498a4e23a7",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 379228,
            "upload_time": "2025-08-13T11:17:18",
            "upload_time_iso_8601": "2025-08-13T11:17:18.178387Z",
            "url": "https://files.pythonhosted.org/packages/80/29/525f40e4e50f8924ac962061c1b7a022e5b108ac237dd55679576465b956/mapper_lib-1.0.6-cp310-cp310-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d97682a8707e2473a06ae15b9e255f81829fb5de3f001ed994caea78d1fb930a",
                "md5": "7b274f205940168aa5975d24aa9e9d67",
                "sha256": "60eef1d10e3ee362dca9bc93e1663483aeebb2f532a677ae012b4c408449e93d"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "7b274f205940168aa5975d24aa9e9d67",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 383329,
            "upload_time": "2025-08-13T11:17:19",
            "upload_time_iso_8601": "2025-08-13T11:17:19.522513Z",
            "url": "https://files.pythonhosted.org/packages/d9/76/82a8707e2473a06ae15b9e255f81829fb5de3f001ed994caea78d1fb930a/mapper_lib-1.0.6-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "23b8676088433857878155e4365efd33cf6ba8ccafcc45d7d7bbfd013ea71428",
                "md5": "62e8e1aa417fc7de05a896a61dd0a4c1",
                "sha256": "f4773632642d670897311c59d658bf6ebb57c0b76b1fd642430f1a7d0492d594"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "62e8e1aa417fc7de05a896a61dd0a4c1",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 818663,
            "upload_time": "2025-08-13T11:17:20",
            "upload_time_iso_8601": "2025-08-13T11:17:20.733087Z",
            "url": "https://files.pythonhosted.org/packages/23/b8/676088433857878155e4365efd33cf6ba8ccafcc45d7d7bbfd013ea71428/mapper_lib-1.0.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3ceaaa8fdee466ba3997f8906229b4197b3ba09ad176c27ec3e9f36c98065ce7",
                "md5": "a653ec683e227179a0db6b2cc46cd9cd",
                "sha256": "05f3857d41d7066242baf2d4ae8b91a59c0b998c501226a61a6a4b69ee4ec8e7"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp311-cp311-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a653ec683e227179a0db6b2cc46cd9cd",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 1842936,
            "upload_time": "2025-08-13T11:17:22",
            "upload_time_iso_8601": "2025-08-13T11:17:22.137154Z",
            "url": "https://files.pythonhosted.org/packages/3c/ea/aa8fdee466ba3997f8906229b4197b3ba09ad176c27ec3e9f36c98065ce7/mapper_lib-1.0.6-cp311-cp311-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f2765d1aaad6d4e9e463b2d6d1d14010c93443f5efc0a7d10d68b4a6616c4bfc",
                "md5": "89d33116faeac8cb30a5de3d256f2061",
                "sha256": "fa04fdf1a352d5b8d8f944782eec71ff751f617419f5e94a9c4a251d536a8975"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp311-cp311-win32.whl",
            "has_sig": false,
            "md5_digest": "89d33116faeac8cb30a5de3d256f2061",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 379233,
            "upload_time": "2025-08-13T11:17:23",
            "upload_time_iso_8601": "2025-08-13T11:17:23.384923Z",
            "url": "https://files.pythonhosted.org/packages/f2/76/5d1aaad6d4e9e463b2d6d1d14010c93443f5efc0a7d10d68b4a6616c4bfc/mapper_lib-1.0.6-cp311-cp311-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c03404fb76569be00749b83c2d0f2e5d08ac4015d1170304a0f475de00ab5bac",
                "md5": "602e5b4d84443c42fa36d08c9de08e90",
                "sha256": "68229585e95f30a26fc9f5d90077976730148e6b37a6483d1883570a684af32b"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "602e5b4d84443c42fa36d08c9de08e90",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 383334,
            "upload_time": "2025-08-13T11:17:24",
            "upload_time_iso_8601": "2025-08-13T11:17:24.478764Z",
            "url": "https://files.pythonhosted.org/packages/c0/34/04fb76569be00749b83c2d0f2e5d08ac4015d1170304a0f475de00ab5bac/mapper_lib-1.0.6-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "89e5e992e2f4911a9841dc2311635044c1b9473c3df541e4cd236baea36289cd",
                "md5": "9354139f48d43aa04ab5469469911941",
                "sha256": "00f2fd384c86d78298e6d271f605bd63082ab194780e1c3c8127c1202b345997"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "9354139f48d43aa04ab5469469911941",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 819552,
            "upload_time": "2025-08-13T11:17:26",
            "upload_time_iso_8601": "2025-08-13T11:17:26.013931Z",
            "url": "https://files.pythonhosted.org/packages/89/e5/e992e2f4911a9841dc2311635044c1b9473c3df541e4cd236baea36289cd/mapper_lib-1.0.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "84e29ace267ec6faad6086e93a57e0703983f764991518c2cf64794bbf2e42e7",
                "md5": "f1f0f8f6f6a899db9ff671ffb7609947",
                "sha256": "595ffce12f7ba1e31c55bb2daa0abc75ed49d92a3c5ce72da99dafc5fc33b081"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp312-cp312-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "f1f0f8f6f6a899db9ff671ffb7609947",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 1843693,
            "upload_time": "2025-08-13T11:17:27",
            "upload_time_iso_8601": "2025-08-13T11:17:27.438818Z",
            "url": "https://files.pythonhosted.org/packages/84/e2/9ace267ec6faad6086e93a57e0703983f764991518c2cf64794bbf2e42e7/mapper_lib-1.0.6-cp312-cp312-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0db01c0482a93c31574565adeafd0ea456ced1b49d1c2e8f743b9b18714152cc",
                "md5": "2acd212fe32f5b7ad154afc88dbccb57",
                "sha256": "45cb1ee0443ca0bfc8562738ba18a961af52d9a203b50c2d84805109dbecb412"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp312-cp312-win32.whl",
            "has_sig": false,
            "md5_digest": "2acd212fe32f5b7ad154afc88dbccb57",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 379271,
            "upload_time": "2025-08-13T11:17:28",
            "upload_time_iso_8601": "2025-08-13T11:17:28.612737Z",
            "url": "https://files.pythonhosted.org/packages/0d/b0/1c0482a93c31574565adeafd0ea456ced1b49d1c2e8f743b9b18714152cc/mapper_lib-1.0.6-cp312-cp312-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b8f8e25c0846f22bfcd30107ea7ef1388908256a8b421958c266d5b126263235",
                "md5": "9a562e54153e066a8c85d563396682bd",
                "sha256": "b67dccab450b7ce2680287c35b8a63de3b3f815c26416a9641720b147f7bedb3"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "9a562e54153e066a8c85d563396682bd",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 383348,
            "upload_time": "2025-08-13T11:17:29",
            "upload_time_iso_8601": "2025-08-13T11:17:29.758705Z",
            "url": "https://files.pythonhosted.org/packages/b8/f8/e25c0846f22bfcd30107ea7ef1388908256a8b421958c266d5b126263235/mapper_lib-1.0.6-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1e906dd08a5fa45f1580486ac78239d5b79d59a91f6b62aadc2817b61a8b9cc1",
                "md5": "d0290e9ff8facd5b2ab65265651d48b3",
                "sha256": "a034a29d31c7f310e866b72f255bbd072ef24b157911124eb6b0782d19f4e01c"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d0290e9ff8facd5b2ab65265651d48b3",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 819578,
            "upload_time": "2025-08-13T11:17:31",
            "upload_time_iso_8601": "2025-08-13T11:17:31.134928Z",
            "url": "https://files.pythonhosted.org/packages/1e/90/6dd08a5fa45f1580486ac78239d5b79d59a91f6b62aadc2817b61a8b9cc1/mapper_lib-1.0.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7f9f9b53d43f4e158c6d4d7d351dbfac6ce7ca1599439da982e0a1206a95c895",
                "md5": "981299a66c50a99c147f3d0852559065",
                "sha256": "86027d22cd8ec015f8ede7b6743e5a667ce397d7f6309b10a046dc47bc425366"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp313-cp313-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "981299a66c50a99c147f3d0852559065",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 1843790,
            "upload_time": "2025-08-13T11:17:34",
            "upload_time_iso_8601": "2025-08-13T11:17:34.260697Z",
            "url": "https://files.pythonhosted.org/packages/7f/9f/9b53d43f4e158c6d4d7d351dbfac6ce7ca1599439da982e0a1206a95c895/mapper_lib-1.0.6-cp313-cp313-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "eca69f68ec7a6c5979b472a5450bc58be7615c604faf5120d03b0a1d8a7f09b9",
                "md5": "cf5811d267432ea8228204bf1dd4eaca",
                "sha256": "a4bb16652bbb5d680fc6683da8c7ab3b60fe55c3f3939525dbe1799164985291"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp313-cp313-win32.whl",
            "has_sig": false,
            "md5_digest": "cf5811d267432ea8228204bf1dd4eaca",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 379275,
            "upload_time": "2025-08-13T11:17:35",
            "upload_time_iso_8601": "2025-08-13T11:17:35.780890Z",
            "url": "https://files.pythonhosted.org/packages/ec/a6/9f68ec7a6c5979b472a5450bc58be7615c604faf5120d03b0a1d8a7f09b9/mapper_lib-1.0.6-cp313-cp313-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3cafe6112a1d834761acf55d7f858ddbd7b67911db44c23727ee268d04662517",
                "md5": "344c4fb1214b179aa27bee213206a2dc",
                "sha256": "d280c670d46a86bde652400454108f07484233d60ad8c50fdb450929aeb3f870"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "344c4fb1214b179aa27bee213206a2dc",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 383352,
            "upload_time": "2025-08-13T11:17:36",
            "upload_time_iso_8601": "2025-08-13T11:17:36.930898Z",
            "url": "https://files.pythonhosted.org/packages/3c/af/e6112a1d834761acf55d7f858ddbd7b67911db44c23727ee268d04662517/mapper_lib-1.0.6-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d8b2d73dd867a27c85a659fc95479291c2211072739fced5b7ef3a833421bb7b",
                "md5": "dc7bf8fe0e6a6078f62cd74659465410",
                "sha256": "cd36437ad757ad493aa6344e88bf75e9bcb9994d4bc377f872118317c4fd4bda"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "dc7bf8fe0e6a6078f62cd74659465410",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 819674,
            "upload_time": "2025-08-13T11:17:38",
            "upload_time_iso_8601": "2025-08-13T11:17:38.430002Z",
            "url": "https://files.pythonhosted.org/packages/d8/b2/d73dd867a27c85a659fc95479291c2211072739fced5b7ef3a833421bb7b/mapper_lib-1.0.6-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "53d198d0947efbdac03251cc9433d4b958884fea769d0ed0ff0298a69efa7eff",
                "md5": "f1530bddf53e91e79b046a10bca8a9c7",
                "sha256": "7d50071a97b6a56cf77442d9e60a9aa3fa63bc283a75057a88f0c6a25fbf09d0"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp314-cp314-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "f1530bddf53e91e79b046a10bca8a9c7",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 1843853,
            "upload_time": "2025-08-13T11:17:39",
            "upload_time_iso_8601": "2025-08-13T11:17:39.842826Z",
            "url": "https://files.pythonhosted.org/packages/53/d1/98d0947efbdac03251cc9433d4b958884fea769d0ed0ff0298a69efa7eff/mapper_lib-1.0.6-cp314-cp314-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "64ddd573569121a0d8e89e7795d9a09e0f4839f3fd17e95ac7fc3575e3104dce",
                "md5": "2be890ef06442f809cf07173af1b695d",
                "sha256": "0a81550a0e0726299b5c872a41fa6e45ada7304e168728e9d4c6a09cbc42b210"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2be890ef06442f809cf07173af1b695d",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 822230,
            "upload_time": "2025-08-13T11:17:44",
            "upload_time_iso_8601": "2025-08-13T11:17:44.217499Z",
            "url": "https://files.pythonhosted.org/packages/64/dd/d573569121a0d8e89e7795d9a09e0f4839f3fd17e95ac7fc3575e3104dce/mapper_lib-1.0.6-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "573644fa522fdf7972e1f2bf77c824ab328ea67ef7a1b70f94138f53e677a075",
                "md5": "3d07163822ec70ba7541590995fb6ebc",
                "sha256": "a3208ff95f2f4f6fa0b8f92e601b8ef721e0217045f5893c4666f9309a5a2ead"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp314-cp314t-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "3d07163822ec70ba7541590995fb6ebc",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 1846468,
            "upload_time": "2025-08-13T11:17:45",
            "upload_time_iso_8601": "2025-08-13T11:17:45.759523Z",
            "url": "https://files.pythonhosted.org/packages/57/36/44fa522fdf7972e1f2bf77c824ab328ea67ef7a1b70f94138f53e677a075/mapper_lib-1.0.6-cp314-cp314t-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9b780e74447bd6a089bce5af58480bbaba4d297e08691fe45c0b93e79aa0a314",
                "md5": "4da9752bc10487265eab34c4d9b08917",
                "sha256": "4b63355f1e723adee281361487d2b554192e4b03ff6f28417cde6b81a3c2462d"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp314-cp314t-win32.whl",
            "has_sig": false,
            "md5_digest": "4da9752bc10487265eab34c4d9b08917",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 378521,
            "upload_time": "2025-08-13T11:17:47",
            "upload_time_iso_8601": "2025-08-13T11:17:47.109998Z",
            "url": "https://files.pythonhosted.org/packages/9b/78/0e74447bd6a089bce5af58480bbaba4d297e08691fe45c0b93e79aa0a314/mapper_lib-1.0.6-cp314-cp314t-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9b99e9fcae84296f3a0ba2a71a5c8ef5bf0f01e7bc3b7fe40f30079f8a5767cd",
                "md5": "8f8c498ca9748a6c03f9880e035ab169",
                "sha256": "3bf22e00db10a542fe1c141ec57bb9877badcfec09dbc99bd27d8b644a3b2b71"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp314-cp314t-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "8f8c498ca9748a6c03f9880e035ab169",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 382573,
            "upload_time": "2025-08-13T11:17:48",
            "upload_time_iso_8601": "2025-08-13T11:17:48.309056Z",
            "url": "https://files.pythonhosted.org/packages/9b/99/e9fcae84296f3a0ba2a71a5c8ef5bf0f01e7bc3b7fe40f30079f8a5767cd/mapper_lib-1.0.6-cp314-cp314t-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "03b5ef4daea4e09a388700165bcd8c29e4a006915e3ea3d319d360003d99f848",
                "md5": "b13f84cff235ca7d2d64c4c37bc3122f",
                "sha256": "4c588042799bd1cc2bc3b755270e1bb8fff9fcc882da0aa0dfcd016e0e02ef80"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp314-cp314-win32.whl",
            "has_sig": false,
            "md5_digest": "b13f84cff235ca7d2d64c4c37bc3122f",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 378343,
            "upload_time": "2025-08-13T11:17:41",
            "upload_time_iso_8601": "2025-08-13T11:17:41.470268Z",
            "url": "https://files.pythonhosted.org/packages/03/b5/ef4daea4e09a388700165bcd8c29e4a006915e3ea3d319d360003d99f848/mapper_lib-1.0.6-cp314-cp314-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8cd31342f6aabc7dde19e4bf5f94bfff47818abca6da18d340b3c5951186d565",
                "md5": "a20e3e5e9d51966bb2b54488fb94c9f0",
                "sha256": "1afdc32c7f71f814965c3bbc2ebed0e0cb9c1091b71a25c42cfb16f608f5ade5"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp314-cp314-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "a20e3e5e9d51966bb2b54488fb94c9f0",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 382304,
            "upload_time": "2025-08-13T11:17:42",
            "upload_time_iso_8601": "2025-08-13T11:17:42.578492Z",
            "url": "https://files.pythonhosted.org/packages/8c/d3/1342f6aabc7dde19e4bf5f94bfff47818abca6da18d340b3c5951186d565/mapper_lib-1.0.6-cp314-cp314-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "616dfeb3eefe4c5aabdd18b120a4f89479471d8cc32d58c585408b817afb8102",
                "md5": "e67455bf5ff81529d66f92ceaf09068c",
                "sha256": "97f2f8ffd3fbd86ecaee17c4b5c944337189d214f5d4edc4ef77213d45c33b82"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e67455bf5ff81529d66f92ceaf09068c",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 816677,
            "upload_time": "2025-08-13T11:17:49",
            "upload_time_iso_8601": "2025-08-13T11:17:49.843200Z",
            "url": "https://files.pythonhosted.org/packages/61/6d/feb3eefe4c5aabdd18b120a4f89479471d8cc32d58c585408b817afb8102/mapper_lib-1.0.6-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d844be323b16bf345678875bf7de1a62b9801df65447adc82ed9fb57ca61a648",
                "md5": "9c94aa701c66b7397b29b6204c049115",
                "sha256": "da91860019e4eeb62fa30b7042d2aead8a83e50ad48d66629af54a225cbbbe3b"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp38-cp38-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "9c94aa701c66b7397b29b6204c049115",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 1842066,
            "upload_time": "2025-08-13T11:17:51",
            "upload_time_iso_8601": "2025-08-13T11:17:51.443591Z",
            "url": "https://files.pythonhosted.org/packages/d8/44/be323b16bf345678875bf7de1a62b9801df65447adc82ed9fb57ca61a648/mapper_lib-1.0.6-cp38-cp38-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "379966ffd1d33309e19e9afec203b8026969e97e4507d7657e9246e0cc1b301d",
                "md5": "1a3d923e39f0bc97695066154e6521aa",
                "sha256": "5839295477f7d1942d59b0d86eaab6cbeb261f0e5da6329d6e496524babe1d18"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp38-cp38-win32.whl",
            "has_sig": false,
            "md5_digest": "1a3d923e39f0bc97695066154e6521aa",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 379170,
            "upload_time": "2025-08-13T11:17:53",
            "upload_time_iso_8601": "2025-08-13T11:17:53.638149Z",
            "url": "https://files.pythonhosted.org/packages/37/99/66ffd1d33309e19e9afec203b8026969e97e4507d7657e9246e0cc1b301d/mapper_lib-1.0.6-cp38-cp38-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2cc1cda5cdd1cb6ea433b8baf7502e5ba29ee402c9e499ea9b4e6cc7e5dafdc7",
                "md5": "a5666de4ec583e2e428b3de5edb1e624",
                "sha256": "479ea0f863c0c010eedf74d3477bb8ca0645df52ac49ffe36ca8dad0cdee1ce3"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "a5666de4ec583e2e428b3de5edb1e624",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 383430,
            "upload_time": "2025-08-13T11:17:55",
            "upload_time_iso_8601": "2025-08-13T11:17:55.227344Z",
            "url": "https://files.pythonhosted.org/packages/2c/c1/cda5cdd1cb6ea433b8baf7502e5ba29ee402c9e499ea9b4e6cc7e5dafdc7/mapper_lib-1.0.6-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3aeeae74f3b2aa16bdfde1966ad5e579dc6d74b1435ece945402ff2d7551bb7a",
                "md5": "3409f41253af0d979c7ce369589f9981",
                "sha256": "3539b5d4a442c20971185a16cb5ce01e950386f1f24658374e1d2ffb0b5ea461"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "3409f41253af0d979c7ce369589f9981",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 817754,
            "upload_time": "2025-08-13T11:17:56",
            "upload_time_iso_8601": "2025-08-13T11:17:56.509116Z",
            "url": "https://files.pythonhosted.org/packages/3a/ee/ae74f3b2aa16bdfde1966ad5e579dc6d74b1435ece945402ff2d7551bb7a/mapper_lib-1.0.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9ff05f4d53310123ad84516098fae2de60b4acb23f6f313a36ebfe39c07957f5",
                "md5": "574e6224a5fdec9211817eba3535f268",
                "sha256": "3b0bfd5c4338fcebb170bd5d1a742b4a3453419536d2b976e646d042405ed418"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp39-cp39-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "574e6224a5fdec9211817eba3535f268",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 1842879,
            "upload_time": "2025-08-13T11:17:58",
            "upload_time_iso_8601": "2025-08-13T11:17:58.020497Z",
            "url": "https://files.pythonhosted.org/packages/9f/f0/5f4d53310123ad84516098fae2de60b4acb23f6f313a36ebfe39c07957f5/mapper_lib-1.0.6-cp39-cp39-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "194380782173db915df5684e307d36c18ae6717eed6728d7adbdcf5bf8f0404b",
                "md5": "6019d457af43cea3ec9963ce50b8d8db",
                "sha256": "0c2bc55ed8ffb1f52ee6e1cfa6376dca238c5052194192d3ca5d89077ae56c4a"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp39-cp39-win32.whl",
            "has_sig": false,
            "md5_digest": "6019d457af43cea3ec9963ce50b8d8db",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 379225,
            "upload_time": "2025-08-13T11:17:59",
            "upload_time_iso_8601": "2025-08-13T11:17:59.195088Z",
            "url": "https://files.pythonhosted.org/packages/19/43/80782173db915df5684e307d36c18ae6717eed6728d7adbdcf5bf8f0404b/mapper_lib-1.0.6-cp39-cp39-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cf2f4bc66ef001d68f5ebc3aa0fd7d81edde07ea885d5fbb6355d52d15ed5f22",
                "md5": "9459ab47bd82f1b21f03c47ae5f12c46",
                "sha256": "9e4d4056001064365e93b593a8eae5674d691133fefda6b2a654e5a20ec45092"
            },
            "downloads": -1,
            "filename": "mapper_lib-1.0.6-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "9459ab47bd82f1b21f03c47ae5f12c46",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 383487,
            "upload_time": "2025-08-13T11:18:00",
            "upload_time_iso_8601": "2025-08-13T11:18:00.255684Z",
            "url": "https://files.pythonhosted.org/packages/cf/2f/4bc66ef001d68f5ebc3aa0fd7d81edde07ea885d5fbb6355d52d15ed5f22/mapper_lib-1.0.6-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-13 11:17:14",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "compre-sua-peca",
    "github_project": "csp_mapper",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "pybind11",
            "specs": [
                [
                    ">=",
                    "2.0.0"
                ]
            ]
        },
        {
            "name": "setuptools",
            "specs": [
                [
                    ">=",
                    "45"
                ]
            ]
        },
        {
            "name": "wheel",
            "specs": []
        },
        {
            "name": "build",
            "specs": []
        }
    ],
    "lcname": "mapper-lib"
}
        
Elapsed time: 0.40844s