# DevDox AI Locust
[](https://opensource.org/licenses/Apache-2.0)
[](https://www.python.org/downloads/)
[](https://github.com/psf/black)
> **AI-powered Locust load test generator from API documentation**
DevDox AI Locust automatically generates comprehensive Locust load testing scripts from your API documentation (OpenAPI/Swagger specs). Using advanced AI capabilities, it creates realistic test scenarios, handles complex authentication flows, and generates production-ready performance tests.
## ๐ What's New in 0.1.3.post1
### Performance & Reliability Improvements
- **๐ Asynchronous API Calls**: Migrated from `Together` to `AsyncTogether` for non-blocking API interactions, significantly improving generation speed and responsiveness
- **โก Enhanced Timeout Handling**: Implemented robust timeout logic with configurable retry mechanisms for better error resilience
- **๐ง Improved Code Extraction**: Enhanced `<code>` block parsing with detailed validation, multiple fallback scenarios, and better error messages
- **๐ก๏ธ Better Error Management**: Comprehensive error handling throughout the AI generation pipeline with graceful degradation
### Bug Fixes & Stability
- Fixed edge cases in code block extraction where malformed responses could cause generation failures
- Improved retry logic to handle transient API errors without interrupting the generation process
## โจ Features
- ๐ค **AI-Enhanced Generation**: Uses Together AI to create intelligent, realistic load test scenarios
- ๐ **OpenAPI/Swagger Support**: Automatically parses OpenAPI 3.0 and Swagger 2.0 specifications
- ๐ง **Production-Ready Code**: Generates clean, maintainable Locust test files
- ๐ฏ **Smart Test Scenarios**: Creates CRUD workflows, authentication flows, and error handling
- ๐ **Realistic Data**: Generates appropriate test data using Faker
- ๐ ๏ธ **Template-Based**: Highly customizable Jinja2 templates for different testing needs
- ๐ **Hybrid Approach**: Combines rule-based generation with AI enhancement
- ๐ **Comprehensive Coverage**: Handles various HTTP methods, content types, and response scenarios
- โก **Asynchronous Processing**: Fast, non-blocking test generation with async/await
## ๐ Quick Start
### Installation
```bash
# Install from PyPI (when published)
pip install devdox-ai-locust
# Or install from source
git clone https://github.com/montymobile1/devdox-ai-locust.git
cd devdox-ai-locust
pip install -e .
```
### Prerequisites
1. **Python 3.12+** - Required for modern async/await syntax and type hints
2. **Together AI API Key** - For AI-enhanced generation capabilities
### Configuration
1. Get your Together AI API key from [Together AI](https://api.together.xyz/)
2. Set up your environment:
```bash
# Copy example environment file
cp .env.example .env
# Edit .env and add your API key
echo "API_KEY=your_together_ai_api_key_here" > .env
```
### Basic Usage
```bash
# Generate from OpenAPI URL
devdox_ai_locust generate --openapi-url https://api.example.com/openapi.json --output ./tests
# Generate with custom configuration
devdox_ai_locust generate \
https://petstore.swagger.io/v3/swagger.json \
--output ./petstore-tests \
--together-api-key your_api_key \
```
## ๐ Documentation
### Command Line Interface
```bash
devdox_ai_locust generate [OPTIONS] SWAGGER_URL
```
| Option | Short | Type | Description | Default |
|--------|--------|------|-------------|---------|
| `--output` | `-o` | Path | Output directory for generated tests | `output` |
| `--users` | `-u` | Integer | Number of simulated users | `10` |
| `--spawn-rate` | `-r` | Float | User spawn rate (users/second) | `2` |
| `--run-time` | `-t` | String | Test duration (e.g., 5m, 1h) | `5m` |
| `--host` | `-H` | String | Target host URL | None |
| `--auth/--no-auth` | | Boolean | Include authentication | `True` |
| `--dry-run` | | Flag | Generate without running | `False` |
| `--custom-requirement` | | String | Custom AI instructions | None |
| `--together-api-key` | | String | Together AI API key | From env |
### Generated Test Structure
```
locust_tests/
โโโ locust.py # Main Locust test file
โโโ config.py # Test configuration
โโโ test_data.py # Test data generators
โโโ utils.py # Utility functions
โโโ requirements.txt # Python dependencies
โโโ .env.example # Environment variables template
โโโ README.md # Test documentation
โโโ workflows/
โ โโโ user_workflow.py # User-related test scenarios
โ โโโ auth_workflow.py # Authentication workflows
โ โโโ crud_workflow.py # CRUD operation workflows
โโโ data/
โโโ users.json # Sample user data
โโโ test_cases.json # Predefined test cases
```
## ๐ง Advanced Usage
### Custom Templates
Create custom Jinja2 templates for specialized test generation:
```python
# custom_template.py.j2
from locust import HttpUser, task, between
class {{ class_name }}User(HttpUser):
wait_time = between(1, 3)
def on_start(self):
"""Setup method called before tasks"""
self.token = self.login()
{% for endpoint in endpoints %}
@task({{ endpoint.weight | default(1) }})
def {{ endpoint.method_name }}(self):
"""{{ endpoint.description }}"""
# Custom task implementation
{{ endpoint.ai_generated_code | indent(8) }}
{% endfor %}
```
### Programmatic Usage
```python
from devdox_ai_locust import HybridLocustGenerator
from devdox_ai_locust.config import Settings
# Initialize generator
config = Settings()
generator = HybridLocustGenerator(config)
# Generate from OpenAPI spec
async def generate_tests():
files, workflows = await generator.generate_from_url(
"https://api.example.com/openapi.json",
output_dir="./tests",
ai_enhanced=True
)
print(f"Generated {len(files)} test files")
print(f"Created {len(workflows)} workflows")
# Run generation
import asyncio
asyncio.run(generate_tests())
```
## ๐งช Development
### Setup Development Environment
```bash
# Clone repository
git clone https://github.com/montymobile1/devdox-ai-locust.git
cd devdox-ai-locust
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install in development mode
pip install -e ".[dev,test,ai]"
# Install pre-commit hooks
pre-commit install
```
### Running Tests
```bash
# Use the test runner script
coverage run -m pytest tests/
```
### Project Structure
```
src/devdox_ai_locust/
โโโ __init__.py
โโโ cli.py # Command line interface
โโโ config.py # Configuration management
โโโ locust_generator.py # Basic test generation
โโโ hybrid_loctus_generator.py # AI-enhanced generation
โโโ templates/ # Jinja2 templates
โ โโโ locust.py.j2
โ โโโ config.py.j2
โ โโโ workflow.py.j2
โโโ schemas/ # Data models and validation
โ โโโ processing_result.py
โ โโโ endpoint_schema.py
โโโ utils/ # Utility modules
โ โโโ swagger_utils.py
โ โโโ open_ai_parser.py
โ โโโ file_creation.py
โโโ prompt/ # AI prompt templates
โโโ system_prompts.py
โโโ enhancement_prompts.py
```
### Development Workflow
1. **Fork** the repository
2. **Create** a feature branch (`git checkout -b feature/amazing-feature`)
3. **Make** your changes
4. **Add** tests for new functionality
5. **Run** the test suite (`make test`)
6. **Commit** your changes (`git commit -m 'Add amazing feature'`)
7. **Push** to the branch (`git push origin feature/amazing-feature`)
8. **Open** a Pull Request
### Code Standards
- **Python 3.12+** with type hints
- **Black** for code formatting
- **isort** for import sorting
- **pytest** for testing
- **mypy** for type checking
- **Pre-commit hooks** for quality gates
## ๐ Requirements
### System Requirements
- **Python**: 3.12 or higher
- **Memory**: 512MB RAM minimum, 1GB recommended
- **Storage**: 100MB for installation, additional space for generated tests
### Dependencies
#### Core Dependencies
- `locust` - Load testing framework
- `click` - CLI framework
- `pyyaml` - YAML parsing
- `requests` - HTTP client
- `pydantic` - Data validation
- `jinja2` - Template engine
- `rich` - Rich text output
- `faker` - Test data generation
#### AI Dependencies
- `langchain-together` - Together AI integration
- `together` - Together AI Python client
#### Development Dependencies
- `pytest` - Testing framework
- `black` - Code formatter
- `mypy` - Type checker
- `pre-commit` - Git hooks
## ๐ Examples
### Example 1: E-commerce API
```bash
# Generate tests for an e-commerce API
devdox_ai_locust generate \
https://api.shop.example.com/v1/openapi.json \
--output ./ecommerce-tests
# The generator will create:
# - Product browsing scenarios
# - Shopping cart workflows
# - Checkout and payment flows
# - User registration and login
# - Order management tests
```
## โ FAQ
**Q: What API specification formats are supported?**
A: We support OpenAPI 3.0+ and Swagger 2.0 specifications in JSON and YAML formats.
**Q: Do I need an AI API key?**
A: Yes, for AI-enhanced generation you need a Together AI API key. Basic generation works without AI.
**Q: Can I customize the generated test templates?**
A: Absolutely! You can provide custom Jinja2 templates using the `--template-dir` option.
**Q: How do I handle authentication in generated tests?**
A: The generator automatically detects authentication schemes from your OpenAPI spec and creates appropriate test flows.
**Q: Can I run tests against different environments?**
A: Yes, use environment variables or configuration files to specify different target hosts and settings.
**Q: What if my API has complex business logic?**
A: The AI enhancement feature analyzes your API patterns and generates realistic business workflows, not just individual endpoint tests.
## ๐ Troubleshooting
### Common Issues
**Import Errors**
```bash
# Ensure proper installation
pip install -e .
# Check Python path
python -c "import devdox_ai_locust; print('OK')"
```
**API Key Issues**
```bash
# Verify API key is set
echo $API_KEY
# Test API connectivity
python -c "from together import Together; print(Together(api_key='your_key').models.list())"
```
**Template Errors**
```bash
# Validate your OpenAPI spec
# Use online validators like swagger.io/tools/swagger-editor/
# Check template syntax
# Ensure custom templates use valid Jinja2 syntax
```
## ๐ License
This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.
## ๐ Acknowledgments
- **Locust** - The amazing load testing framework that powers our generated tests
- **Together AI** - Providing the AI capabilities for intelligent test generation
- **OpenAPI Initiative** - For standardizing API documentation
- **Python Community** - For the excellent libraries and tools
---
**Made with โค๏ธ by the DevDox team**
Transform your API documentation into powerful load tests with the magic of AI! ๐
Raw data
{
"_id": null,
"home_page": null,
"name": "devdox-ai-locust",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.12",
"maintainer_email": "Hayat Bourji <hayat.bourgi@montyholding.com>",
"keywords": "locust, load-testing, api, testing, performance, ai, openapi, swagger",
"author": null,
"author_email": "Hayat Bourji <hayat.bourgi@montyholding.com>",
"download_url": "https://files.pythonhosted.org/packages/c8/f7/818999570dd6fa54583c88d018d743ea03ecf305ed7cd05effb5c18e23f3/devdox_ai_locust-0.1.3.post1.tar.gz",
"platform": null,
"description": "# DevDox AI Locust\n\n[](https://opensource.org/licenses/Apache-2.0)\n[](https://www.python.org/downloads/)\n[](https://github.com/psf/black)\n\n> **AI-powered Locust load test generator from API documentation**\n\nDevDox AI Locust automatically generates comprehensive Locust load testing scripts from your API documentation (OpenAPI/Swagger specs). Using advanced AI capabilities, it creates realistic test scenarios, handles complex authentication flows, and generates production-ready performance tests.\n\n\n## \ud83c\udd95 What's New in 0.1.3.post1\n\n### Performance & Reliability Improvements\n\n- **\ud83d\ude80 Asynchronous API Calls**: Migrated from `Together` to `AsyncTogether` for non-blocking API interactions, significantly improving generation speed and responsiveness\n- **\u26a1 Enhanced Timeout Handling**: Implemented robust timeout logic with configurable retry mechanisms for better error resilience\n- **\ud83d\udd27 Improved Code Extraction**: Enhanced `<code>` block parsing with detailed validation, multiple fallback scenarios, and better error messages\n- **\ud83d\udee1\ufe0f Better Error Management**: Comprehensive error handling throughout the AI generation pipeline with graceful degradation\n\n### Bug Fixes & Stability\n\n- Fixed edge cases in code block extraction where malformed responses could cause generation failures\n- Improved retry logic to handle transient API errors without interrupting the generation process\n\n## \u2728 Features\n\n- \ud83e\udd16 **AI-Enhanced Generation**: Uses Together AI to create intelligent, realistic load test scenarios\n- \ud83d\udcda **OpenAPI/Swagger Support**: Automatically parses OpenAPI 3.0 and Swagger 2.0 specifications \n- \ud83d\udd27 **Production-Ready Code**: Generates clean, maintainable Locust test files\n- \ud83c\udfaf **Smart Test Scenarios**: Creates CRUD workflows, authentication flows, and error handling\n- \ud83d\udcca **Realistic Data**: Generates appropriate test data using Faker\n- \ud83d\udee0\ufe0f **Template-Based**: Highly customizable Jinja2 templates for different testing needs\n- \ud83d\udd04 **Hybrid Approach**: Combines rule-based generation with AI enhancement\n- \ud83d\udcc8 **Comprehensive Coverage**: Handles various HTTP methods, content types, and response scenarios\n- \u26a1 **Asynchronous Processing**: Fast, non-blocking test generation with async/await\n\n## \ud83d\ude80 Quick Start\n\n### Installation\n\n```bash\n# Install from PyPI (when published)\npip install devdox-ai-locust\n\n# Or install from source\ngit clone https://github.com/montymobile1/devdox-ai-locust.git\ncd devdox-ai-locust\npip install -e .\n```\n\n### Prerequisites\n\n1. **Python 3.12+** - Required for modern async/await syntax and type hints\n2. **Together AI API Key** - For AI-enhanced generation capabilities\n\n### Configuration\n\n1. Get your Together AI API key from [Together AI](https://api.together.xyz/)\n2. Set up your environment:\n\n```bash\n# Copy example environment file\ncp .env.example .env\n\n# Edit .env and add your API key\necho \"API_KEY=your_together_ai_api_key_here\" > .env\n```\n\n### Basic Usage\n\n```bash\n# Generate from OpenAPI URL\ndevdox_ai_locust generate --openapi-url https://api.example.com/openapi.json --output ./tests\n\n# Generate with custom configuration\ndevdox_ai_locust generate \\\n https://petstore.swagger.io/v3/swagger.json \\\n --output ./petstore-tests \\\n --together-api-key your_api_key \\\n \n```\n\n\n\n## \ud83d\udcd6 Documentation\n\n### Command Line Interface\n\n```bash\ndevdox_ai_locust generate [OPTIONS] SWAGGER_URL\n```\n\n| Option | Short | Type | Description | Default |\n|--------|--------|------|-------------|---------|\n| `--output` | `-o` | Path | Output directory for generated tests | `output` |\n| `--users` | `-u` | Integer | Number of simulated users | `10` |\n| `--spawn-rate` | `-r` | Float | User spawn rate (users/second) | `2` |\n| `--run-time` | `-t` | String | Test duration (e.g., 5m, 1h) | `5m` |\n| `--host` | `-H` | String | Target host URL | None |\n| `--auth/--no-auth` | | Boolean | Include authentication | `True` |\n| `--dry-run` | | Flag | Generate without running | `False` |\n| `--custom-requirement` | | String | Custom AI instructions | None |\n| `--together-api-key` | | String | Together AI API key | From env |\n\n\n\n\n### Generated Test Structure\n\n```\nlocust_tests/\n\u251c\u2500\u2500 locust.py # Main Locust test file\n\u251c\u2500\u2500 config.py # Test configuration\n\u251c\u2500\u2500 test_data.py # Test data generators\n\u251c\u2500\u2500 utils.py # Utility functions\n\u251c\u2500\u2500 requirements.txt # Python dependencies\n\u251c\u2500\u2500 .env.example # Environment variables template\n\u251c\u2500\u2500 README.md # Test documentation\n\u251c\u2500\u2500 workflows/\n\u2502 \u251c\u2500\u2500 user_workflow.py # User-related test scenarios\n\u2502 \u251c\u2500\u2500 auth_workflow.py # Authentication workflows\n\u2502 \u2514\u2500\u2500 crud_workflow.py # CRUD operation workflows\n\u2514\u2500\u2500 data/\n \u251c\u2500\u2500 users.json # Sample user data\n \u2514\u2500\u2500 test_cases.json # Predefined test cases\n```\n\n## \ud83d\udd27 Advanced Usage\n\n### Custom Templates\n\nCreate custom Jinja2 templates for specialized test generation:\n\n```python\n# custom_template.py.j2\nfrom locust import HttpUser, task, between\n\nclass {{ class_name }}User(HttpUser):\n wait_time = between(1, 3)\n \n def on_start(self):\n \"\"\"Setup method called before tasks\"\"\"\n self.token = self.login()\n \n {% for endpoint in endpoints %}\n @task({{ endpoint.weight | default(1) }})\n def {{ endpoint.method_name }}(self):\n \"\"\"{{ endpoint.description }}\"\"\"\n # Custom task implementation\n {{ endpoint.ai_generated_code | indent(8) }}\n {% endfor %}\n```\n\n### Programmatic Usage\n\n```python\nfrom devdox_ai_locust import HybridLocustGenerator\nfrom devdox_ai_locust.config import Settings\n\n# Initialize generator\nconfig = Settings()\ngenerator = HybridLocustGenerator(config)\n\n# Generate from OpenAPI spec\nasync def generate_tests():\n files, workflows = await generator.generate_from_url(\n \"https://api.example.com/openapi.json\",\n output_dir=\"./tests\",\n ai_enhanced=True\n )\n \n print(f\"Generated {len(files)} test files\")\n print(f\"Created {len(workflows)} workflows\")\n\n# Run generation\nimport asyncio\nasyncio.run(generate_tests())\n```\n\n\n## \ud83e\uddea Development\n\n### Setup Development Environment\n\n```bash\n# Clone repository\ngit clone https://github.com/montymobile1/devdox-ai-locust.git\ncd devdox-ai-locust\n\n# Create virtual environment\npython -m venv venv\nsource venv/bin/activate # On Windows: venv\\Scripts\\activate\n\n# Install in development mode\npip install -e \".[dev,test,ai]\"\n\n# Install pre-commit hooks\npre-commit install\n```\n\n### Running Tests\n\n```bash\n\n# Use the test runner script\ncoverage run -m pytest tests/\n```\n\n\n\n### Project Structure\n\n```\nsrc/devdox_ai_locust/\n\u251c\u2500\u2500 __init__.py\n\u251c\u2500\u2500 cli.py # Command line interface\n\u251c\u2500\u2500 config.py # Configuration management\n\u251c\u2500\u2500 locust_generator.py # Basic test generation\n\u251c\u2500\u2500 hybrid_loctus_generator.py # AI-enhanced generation\n\u251c\u2500\u2500 templates/ # Jinja2 templates\n\u2502 \u251c\u2500\u2500 locust.py.j2\n\u2502 \u251c\u2500\u2500 config.py.j2\n\u2502 \u2514\u2500\u2500 workflow.py.j2\n\u251c\u2500\u2500 schemas/ # Data models and validation\n\u2502 \u251c\u2500\u2500 processing_result.py\n\u2502 \u2514\u2500\u2500 endpoint_schema.py\n\u251c\u2500\u2500 utils/ # Utility modules\n\u2502 \u251c\u2500\u2500 swagger_utils.py\n\u2502 \u251c\u2500\u2500 open_ai_parser.py\n\u2502 \u2514\u2500\u2500 file_creation.py\n\u2514\u2500\u2500 prompt/ # AI prompt templates\n \u251c\u2500\u2500 system_prompts.py\n \u2514\u2500\u2500 enhancement_prompts.py\n```\n\n### Development Workflow\n\n1. **Fork** the repository\n2. **Create** a feature branch (`git checkout -b feature/amazing-feature`)\n3. **Make** your changes\n4. **Add** tests for new functionality\n5. **Run** the test suite (`make test`)\n6. **Commit** your changes (`git commit -m 'Add amazing feature'`)\n7. **Push** to the branch (`git push origin feature/amazing-feature`)\n8. **Open** a Pull Request\n\n### Code Standards\n\n- **Python 3.12+** with type hints\n- **Black** for code formatting\n- **isort** for import sorting\n- **pytest** for testing\n- **mypy** for type checking\n- **Pre-commit hooks** for quality gates\n\n## \ud83d\udccb Requirements\n\n### System Requirements\n\n- **Python**: 3.12 or higher\n- **Memory**: 512MB RAM minimum, 1GB recommended\n- **Storage**: 100MB for installation, additional space for generated tests\n\n### Dependencies\n\n#### Core Dependencies\n- `locust` - Load testing framework\n- `click` - CLI framework\n- `pyyaml` - YAML parsing\n- `requests` - HTTP client\n- `pydantic` - Data validation\n- `jinja2` - Template engine\n- `rich` - Rich text output\n- `faker` - Test data generation\n\n#### AI Dependencies\n- `langchain-together` - Together AI integration\n- `together` - Together AI Python client\n\n#### Development Dependencies\n- `pytest` - Testing framework\n- `black` - Code formatter\n- `mypy` - Type checker\n- `pre-commit` - Git hooks\n\n## \ud83d\udd0d Examples\n\n### Example 1: E-commerce API\n\n```bash\n# Generate tests for an e-commerce API\ndevdox_ai_locust generate \\\n https://api.shop.example.com/v1/openapi.json \\\n --output ./ecommerce-tests \n\n# The generator will create:\n# - Product browsing scenarios\n# - Shopping cart workflows \n# - Checkout and payment flows\n# - User registration and login\n# - Order management tests\n```\n\n## \u2753 FAQ\n\n**Q: What API specification formats are supported?**\nA: We support OpenAPI 3.0+ and Swagger 2.0 specifications in JSON and YAML formats.\n\n**Q: Do I need an AI API key?**\nA: Yes, for AI-enhanced generation you need a Together AI API key. Basic generation works without AI.\n\n**Q: Can I customize the generated test templates?**\nA: Absolutely! You can provide custom Jinja2 templates using the `--template-dir` option.\n\n**Q: How do I handle authentication in generated tests?**\nA: The generator automatically detects authentication schemes from your OpenAPI spec and creates appropriate test flows.\n\n**Q: Can I run tests against different environments?**\nA: Yes, use environment variables or configuration files to specify different target hosts and settings.\n\n**Q: What if my API has complex business logic?**\nA: The AI enhancement feature analyzes your API patterns and generates realistic business workflows, not just individual endpoint tests.\n\n## \ud83d\udc1b Troubleshooting\n\n### Common Issues\n\n**Import Errors**\n```bash\n# Ensure proper installation\npip install -e .\n\n# Check Python path\npython -c \"import devdox_ai_locust; print('OK')\"\n```\n\n**API Key Issues**\n```bash\n# Verify API key is set\necho $API_KEY\n\n# Test API connectivity\npython -c \"from together import Together; print(Together(api_key='your_key').models.list())\"\n```\n\n\n**Template Errors**\n```bash\n# Validate your OpenAPI spec\n# Use online validators like swagger.io/tools/swagger-editor/\n\n# Check template syntax\n# Ensure custom templates use valid Jinja2 syntax\n```\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.\n\n## \ud83d\ude4f Acknowledgments\n\n- **Locust** - The amazing load testing framework that powers our generated tests\n- **Together AI** - Providing the AI capabilities for intelligent test generation \n- **OpenAPI Initiative** - For standardizing API documentation\n- **Python Community** - For the excellent libraries and tools\n\n\n---\n\n**Made with \u2764\ufe0f by the DevDox team**\n\nTransform your API documentation into powerful load tests with the magic of AI! \ud83d\ude80\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "AI-powered Locust load test generator from API documentation",
"version": "0.1.3.post1",
"project_urls": {
"Homepage": "https://github.com/montymobile1/devdox-ai-locust",
"Repository": "https://github.com/montymobile1/devdox-ai-locust"
},
"split_keywords": [
"locust",
" load-testing",
" api",
" testing",
" performance",
" ai",
" openapi",
" swagger"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "5786298e48fddcba03336e4daf15c96d8dc718a6683a733b5315475393a72a33",
"md5": "10081b5668a1692b1c2ec42477c1ea25",
"sha256": "7a7b0399eb5e17b639f519fecdb7179f6ca9dd5ac8cb0455d9fbd846a3eabd97"
},
"downloads": -1,
"filename": "devdox_ai_locust-0.1.3.post1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "10081b5668a1692b1c2ec42477c1ea25",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.12",
"size": 58831,
"upload_time": "2025-10-14T10:38:24",
"upload_time_iso_8601": "2025-10-14T10:38:24.418187Z",
"url": "https://files.pythonhosted.org/packages/57/86/298e48fddcba03336e4daf15c96d8dc718a6683a733b5315475393a72a33/devdox_ai_locust-0.1.3.post1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c8f7818999570dd6fa54583c88d018d743ea03ecf305ed7cd05effb5c18e23f3",
"md5": "dc1241b8cd0f59b0bd8c25b23ae53f91",
"sha256": "46e8ce05ca97360f1cb78211857bbb455c028a934891f9263a2b653095d205aa"
},
"downloads": -1,
"filename": "devdox_ai_locust-0.1.3.post1.tar.gz",
"has_sig": false,
"md5_digest": "dc1241b8cd0f59b0bd8c25b23ae53f91",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.12",
"size": 73217,
"upload_time": "2025-10-14T10:38:25",
"upload_time_iso_8601": "2025-10-14T10:38:25.679054Z",
"url": "https://files.pythonhosted.org/packages/c8/f7/818999570dd6fa54583c88d018d743ea03ecf305ed7cd05effb5c18e23f3/devdox_ai_locust-0.1.3.post1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-14 10:38:25",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "montymobile1",
"github_project": "devdox-ai-locust",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "devdox-ai-locust"
}