kx-publish-pypi


Namekx-publish-pypi JSON
Version 1.0.2 PyPI version JSON
download
home_pageNone
SummaryA friendly CLI tool to check and publish Python packages to TestPyPI/PyPI
upload_time2025-09-10 21:41:37
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords publish cli pypi packaging release kx
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">
  <img src="https://raw.githubusercontent.com/Khader-X/kx-publish-pypi/master/logo/logo-2-1.png" alt="KX-Publish-PyPI Logo" width="200"/>
</div>

<div align="center">
  <h1>KX-Publish-PyPI</h1>
  <p><em>The Professional CLI Tool for Python Package Publishing</em></p>
</div>

<div align="center">
  <a href="https://pypi.org/project/kx_publish_pypi/"><img src="https://badge.fury.io/py/kx_publish_pypi.svg" alt="PyPI version"></a>
  <a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/python-3.9+-blue.svg" alt="Python 3.9+"></a>
  <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
  <a href="https://github.com/Khader-X/kx-publish-pypi/actions"><img src="https://img.shields.io/github/actions/workflow/status/Khader-X/kx-publish-pypi/ci.yml" alt="Build Status"></a>
  <a href="https://github.com/Khader-X/kx-publish-pypi/stargazers"><img src="https://img.shields.io/github/stars/Khader-X/kx-publish-pypi?style=social" alt="GitHub stars"></a>
</div>

<div align="center">
  <h3>โšก <strong>Publish Python packages to PyPI in under 30 seconds!</strong> โšก</h3>
  <p><strong>Version 1.0.1</strong> | <strong>Author: ABUELTAYEF Khader</strong> | <strong>Python 3.9+</strong></p>
</div>

---

## ๐ŸŽฏ **Why Choose KX-Publish-PyPI?**

<div align="center">

| Feature | **KX-Publish-PyPI** | Traditional Methods |
|---------|------------------|-------------------|
| **Setup Time** | โšก 30 seconds | โฐ 30+ minutes |
| **Security** | ๐Ÿ” System keyring | ๐Ÿ“ Plain text files |
| **User Experience** | ๐ŸŽจ Rich CLI + Progress bars | ๐Ÿ“Ÿ Basic terminal output |
| **Error Handling** | ๐Ÿ›ก๏ธ Smart validation | โŒ Manual debugging |
| **Version Management** | ๐Ÿ“ˆ Intelligent bumping | ๐Ÿ”ข Manual editing |
| **Build Backend Support** | ๐Ÿ› ๏ธ All modern backends | โš™๏ธ Limited support |

</div>

---

## ๐Ÿ’ป **Installation**

### โšก Quick Install
```bash
pip install kx-publish-pypi
```

### โœ… Verify Installation
```bash
kx-publish-pypi --version
```

---

## ๐Ÿ’ป **Account Setup & Token Generation**

<div align="center">
  <h3>๐Ÿ”‘ Get Started with PyPI Publishing</h3>
</div>

### 1. **Create PyPI Account**
1. ๐ŸŒ Visit [pypi.org](https://pypi.org/)
2. ๐Ÿ“ Click "Register" in the top right
3. โœ‰๏ธ Fill out the registration form
4. โœ… Verify your email address

### 2. **Create TestPyPI Account**
1. ๐ŸŒ Visit [test.pypi.org](https://test.pypi.org/)
2. ๐Ÿ“ Click "Register" in the top right
3. โœ‰๏ธ Fill out the registration form
4. โœ… Verify your email address

### 3. **Generate API Tokens**

#### **For PyPI Production:**
1. ๐Ÿ”‘ Log in to [pypi.org](https://pypi.org/)
2. โš™๏ธ Go to **Account Settings** โ†’ **API tokens**
3. โž• Click **"Add API token"**
4. ๐Ÿท๏ธ Give it a name (e.g., "kx-publish-pypi")
5. ๐Ÿ’พ **Copy & Save the token** (you won't see it again!)

#### **For TestPyPI:**
1. ๐Ÿ”‘ Log in to [test.pypi.org](https://test.pypi.org/)
2. โš™๏ธ Go to **Account Settings** โ†’ **API tokens**
3. โž• Click **"Add API token"**
4. ๐Ÿท๏ธ Give it a name (e.g., "kx-publish-pypi-test")
5. ๐Ÿ’พ Copy & Save the token

### 4. **Store Tokens Securely**
Use the CLI to store your tokens securely:
```bash
kx-publish-pypi setup-tokens
```

This will prompt you to enter your TestPyPI and PyPI tokens, which will be stored in your system's keyring.

๐Ÿ’ก **Pro Tip:** You can also store tokens directly during the guided workflow:
```bash
kx-publish-pypi run
```

---

## ๐Ÿš€ **Quick Start**

<div align="center">
  <h3>Choose Your Publishing Journey</h3>
</div>

### ๐ŸŽฏ **Option 1: Complete Guided Workflow (Recommended)**
```bash
kx-publish-pypi run
```
<div align="center">
  <em>โœจ <strong>One command handles everything:</strong> checks, tokens, version bump, build, and publish</em>
</div>

### ๐Ÿ› ๏ธ **Option 2: Individual Commands**
```bash
# ๐Ÿ” Pre-flight check your package
kx-publish-pypi check

# ๐Ÿ” Setup API tokens securely
kx-publish-pypi setup-tokens

# ๐Ÿ“ˆ Bump version (patch/minor/major)
kx-publish-pypi bump patch

# ๐Ÿงช Publish to TestPyPI first
kx-publish-pypi publish-test

# ๐Ÿš€ Publish to production PyPI
kx-publish-pypi publish-prod
```

---

## โœจ **Key Features**

<div align="center">

| ๐ŸŽจ **Rich Interface** | Rich, colorful output with progress bars |
|----------------------|------------------------------------------|
| ๐Ÿ” **Smart Pre-checks** | Validates package structure and configuration |
| ๐Ÿ” **Secure Token Storage** | Uses system keyring for API tokens |
| ๐Ÿ“ฆ **Enhanced Version Detection** | Supports all modern Python build backends |
| ๐Ÿ”ฅ **Interactive Workflow** | Guided experience from check to publish |
| ๐Ÿ“ˆ **Version Management** | Intelligent version bumping |
| ๐Ÿ› ๏ธ **Build Integration** | Works with setuptools, flit, hatchling, etc. |

</div>

---

## ๐Ÿ—๏ธ **Supported Build Backends**

<div align="center">

| Backend | Status | Version Detection |
|---------|--------|-------------------|
| setuptools | โœ… Full Support | `__version__` files |
| poetry | โœ… Full Support | `pyproject.toml` |
| flit | โœ… Full Support | `pyproject.toml` |
| hatchling | โœ… Full Support | `pyproject.toml` |
| pdm | โœ… Full Support | `pyproject.toml` |
| scikit-build | โœ… Full Support | Custom detection |

</div>

---

## ๐Ÿš€ **Programmatic API**

```python
from kx_publish_pypi import detect_package_version
from pathlib import Path

# Enhanced version detection
result = detect_package_version(Path("."))
if result.version_info:
    print(f"๐Ÿ“ฆ Version: {result.version_info.version}")
    print(f"๐Ÿ”ง Method: {result.version_info.method}")
```

---

## ๐Ÿค **Contributing**

We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.

### ๐Ÿ› Found a Bug?
- ๐Ÿ› [Open an Issue](https://github.com/Khader-X/kx-publish-pypi/issues)
- ๐Ÿ’ก [Suggest a Feature](https://github.com/Khader-X/kx-publish-pypi/discussions)

---

## ๐Ÿ“„ **License**

<div align="center">
  <a href="https://opensource.org/licenses/MIT">
    <img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="MIT License">
  </a>
</div>

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

---

<div align="center">

## ๐ŸŒ **Connect with Us**

**๐Ÿš€ Powered by [KhaderX](https://KhaderX.com/)** |
**๐Ÿ‘จโ€๐Ÿ’ป Founder: [ABUELTAYEF Khader](https://github.com/KhaderX-com)**

<div align="center">
  <a href="https://github.com/Khader-X"><img src="https://img.shields.io/badge/GitHub-Khader--X-blue?style=for-the-badge&logo=github" alt="GitHub"></a>
  <a href="https://KhaderX.com/"><img src="https://img.shields.io/badge/Website-KhaderX.com-blue?style=for-the-badge&logo=firefox" alt="Website"></a>
  <a href="https://pypi.org/user/KhaderX/"><img src="https://img.shields.io/badge/PyPI-KhaderX-orange?style=for-the-badge&logo=pypi" alt="PyPI"></a>
</div>

<div align="center">
  <h3>โญ If you find this tool useful, please star this repo!</h3>
  <a href="https://github.com/Khader-X/kx-publish-pypi/stargazers">
    <img src="https://img.shields.io/github/stars/Khader-X/kx-publish-pypi?style=social" alt="GitHub stars">
  </a>
</div>

</div>

<div align="center">
  <img src="https://raw.githubusercontent.com/Khader-X/kx-publish-pypi/master/logo/logo-2-1.png" alt="KX-Publish-PyPI Logo" width="150"/>
</div>

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "kx-publish-pypi",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "ABUELTAYEF Khader <abueltayef.khader.main@hotmail.com>",
    "keywords": "publish, cli, pypi, packaging, release, kx",
    "author": null,
    "author_email": "ABUELTAYEF Khader <abueltayef.khader@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/d0/90/45657092f32f198c7727fd1eec49421bf204afcca3404c2fcaa345f36606/kx_publish_pypi-1.0.2.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\r\n  <img src=\"https://raw.githubusercontent.com/Khader-X/kx-publish-pypi/master/logo/logo-2-1.png\" alt=\"KX-Publish-PyPI Logo\" width=\"200\"/>\r\n</div>\r\n\r\n<div align=\"center\">\r\n  <h1>KX-Publish-PyPI</h1>\r\n  <p><em>The Professional CLI Tool for Python Package Publishing</em></p>\r\n</div>\r\n\r\n<div align=\"center\">\r\n  <a href=\"https://pypi.org/project/kx_publish_pypi/\"><img src=\"https://badge.fury.io/py/kx_publish_pypi.svg\" alt=\"PyPI version\"></a>\r\n  <a href=\"https://www.python.org/downloads/\"><img src=\"https://img.shields.io/badge/python-3.9+-blue.svg\" alt=\"Python 3.9+\"></a>\r\n  <a href=\"https://opensource.org/licenses/MIT\"><img src=\"https://img.shields.io/badge/License-MIT-yellow.svg\" alt=\"License: MIT\"></a>\r\n  <a href=\"https://github.com/Khader-X/kx-publish-pypi/actions\"><img src=\"https://img.shields.io/github/actions/workflow/status/Khader-X/kx-publish-pypi/ci.yml\" alt=\"Build Status\"></a>\r\n  <a href=\"https://github.com/Khader-X/kx-publish-pypi/stargazers\"><img src=\"https://img.shields.io/github/stars/Khader-X/kx-publish-pypi?style=social\" alt=\"GitHub stars\"></a>\r\n</div>\r\n\r\n<div align=\"center\">\r\n  <h3>\u26a1 <strong>Publish Python packages to PyPI in under 30 seconds!</strong> \u26a1</h3>\r\n  <p><strong>Version 1.0.1</strong> | <strong>Author: ABUELTAYEF Khader</strong> | <strong>Python 3.9+</strong></p>\r\n</div>\r\n\r\n---\r\n\r\n## \ud83c\udfaf **Why Choose KX-Publish-PyPI?**\r\n\r\n<div align=\"center\">\r\n\r\n| Feature | **KX-Publish-PyPI** | Traditional Methods |\r\n|---------|------------------|-------------------|\r\n| **Setup Time** | \u26a1 30 seconds | \u23f0 30+ minutes |\r\n| **Security** | \ud83d\udd10 System keyring | \ud83d\udcdd Plain text files |\r\n| **User Experience** | \ud83c\udfa8 Rich CLI + Progress bars | \ud83d\udcdf Basic terminal output |\r\n| **Error Handling** | \ud83d\udee1\ufe0f Smart validation | \u274c Manual debugging |\r\n| **Version Management** | \ud83d\udcc8 Intelligent bumping | \ud83d\udd22 Manual editing |\r\n| **Build Backend Support** | \ud83d\udee0\ufe0f All modern backends | \u2699\ufe0f Limited support |\r\n\r\n</div>\r\n\r\n---\r\n\r\n## \ud83d\udcbb **Installation**\r\n\r\n### \u26a1 Quick Install\r\n```bash\r\npip install kx-publish-pypi\r\n```\r\n\r\n### \u2705 Verify Installation\r\n```bash\r\nkx-publish-pypi --version\r\n```\r\n\r\n---\r\n\r\n## \ud83d\udcbb **Account Setup & Token Generation**\r\n\r\n<div align=\"center\">\r\n  <h3>\ud83d\udd11 Get Started with PyPI Publishing</h3>\r\n</div>\r\n\r\n### 1. **Create PyPI Account**\r\n1. \ud83c\udf10 Visit [pypi.org](https://pypi.org/)\r\n2. \ud83d\udcdd Click \"Register\" in the top right\r\n3. \u2709\ufe0f Fill out the registration form\r\n4. \u2705 Verify your email address\r\n\r\n### 2. **Create TestPyPI Account**\r\n1. \ud83c\udf10 Visit [test.pypi.org](https://test.pypi.org/)\r\n2. \ud83d\udcdd Click \"Register\" in the top right\r\n3. \u2709\ufe0f Fill out the registration form\r\n4. \u2705 Verify your email address\r\n\r\n### 3. **Generate API Tokens**\r\n\r\n#### **For PyPI Production:**\r\n1. \ud83d\udd11 Log in to [pypi.org](https://pypi.org/)\r\n2. \u2699\ufe0f Go to **Account Settings** \u2192 **API tokens**\r\n3. \u2795 Click **\"Add API token\"**\r\n4. \ud83c\udff7\ufe0f Give it a name (e.g., \"kx-publish-pypi\")\r\n5. \ud83d\udcbe **Copy & Save the token** (you won't see it again!)\r\n\r\n#### **For TestPyPI:**\r\n1. \ud83d\udd11 Log in to [test.pypi.org](https://test.pypi.org/)\r\n2. \u2699\ufe0f Go to **Account Settings** \u2192 **API tokens**\r\n3. \u2795 Click **\"Add API token\"**\r\n4. \ud83c\udff7\ufe0f Give it a name (e.g., \"kx-publish-pypi-test\")\r\n5. \ud83d\udcbe Copy & Save the token\r\n\r\n### 4. **Store Tokens Securely**\r\nUse the CLI to store your tokens securely:\r\n```bash\r\nkx-publish-pypi setup-tokens\r\n```\r\n\r\nThis will prompt you to enter your TestPyPI and PyPI tokens, which will be stored in your system's keyring.\r\n\r\n\ud83d\udca1 **Pro Tip:** You can also store tokens directly during the guided workflow:\r\n```bash\r\nkx-publish-pypi run\r\n```\r\n\r\n---\r\n\r\n## \ud83d\ude80 **Quick Start**\r\n\r\n<div align=\"center\">\r\n  <h3>Choose Your Publishing Journey</h3>\r\n</div>\r\n\r\n### \ud83c\udfaf **Option 1: Complete Guided Workflow (Recommended)**\r\n```bash\r\nkx-publish-pypi run\r\n```\r\n<div align=\"center\">\r\n  <em>\u2728 <strong>One command handles everything:</strong> checks, tokens, version bump, build, and publish</em>\r\n</div>\r\n\r\n### \ud83d\udee0\ufe0f **Option 2: Individual Commands**\r\n```bash\r\n# \ud83d\udd0d Pre-flight check your package\r\nkx-publish-pypi check\r\n\r\n# \ud83d\udd10 Setup API tokens securely\r\nkx-publish-pypi setup-tokens\r\n\r\n# \ud83d\udcc8 Bump version (patch/minor/major)\r\nkx-publish-pypi bump patch\r\n\r\n# \ud83e\uddea Publish to TestPyPI first\r\nkx-publish-pypi publish-test\r\n\r\n# \ud83d\ude80 Publish to production PyPI\r\nkx-publish-pypi publish-prod\r\n```\r\n\r\n---\r\n\r\n## \u2728 **Key Features**\r\n\r\n<div align=\"center\">\r\n\r\n| \ud83c\udfa8 **Rich Interface** | Rich, colorful output with progress bars |\r\n|----------------------|------------------------------------------|\r\n| \ud83d\udd0d **Smart Pre-checks** | Validates package structure and configuration |\r\n| \ud83d\udd10 **Secure Token Storage** | Uses system keyring for API tokens |\r\n| \ud83d\udce6 **Enhanced Version Detection** | Supports all modern Python build backends |\r\n| \ud83d\udd25 **Interactive Workflow** | Guided experience from check to publish |\r\n| \ud83d\udcc8 **Version Management** | Intelligent version bumping |\r\n| \ud83d\udee0\ufe0f **Build Integration** | Works with setuptools, flit, hatchling, etc. |\r\n\r\n</div>\r\n\r\n---\r\n\r\n## \ud83c\udfd7\ufe0f **Supported Build Backends**\r\n\r\n<div align=\"center\">\r\n\r\n| Backend | Status | Version Detection |\r\n|---------|--------|-------------------|\r\n| setuptools | \u2705 Full Support | `__version__` files |\r\n| poetry | \u2705 Full Support | `pyproject.toml` |\r\n| flit | \u2705 Full Support | `pyproject.toml` |\r\n| hatchling | \u2705 Full Support | `pyproject.toml` |\r\n| pdm | \u2705 Full Support | `pyproject.toml` |\r\n| scikit-build | \u2705 Full Support | Custom detection |\r\n\r\n</div>\r\n\r\n---\r\n\r\n## \ud83d\ude80 **Programmatic API**\r\n\r\n```python\r\nfrom kx_publish_pypi import detect_package_version\r\nfrom pathlib import Path\r\n\r\n# Enhanced version detection\r\nresult = detect_package_version(Path(\".\"))\r\nif result.version_info:\r\n    print(f\"\ud83d\udce6 Version: {result.version_info.version}\")\r\n    print(f\"\ud83d\udd27 Method: {result.version_info.method}\")\r\n```\r\n\r\n---\r\n\r\n## \ud83e\udd1d **Contributing**\r\n\r\nWe welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.\r\n\r\n### \ud83d\udc1b Found a Bug?\r\n- \ud83d\udc1b [Open an Issue](https://github.com/Khader-X/kx-publish-pypi/issues)\r\n- \ud83d\udca1 [Suggest a Feature](https://github.com/Khader-X/kx-publish-pypi/discussions)\r\n\r\n---\r\n\r\n## \ud83d\udcc4 **License**\r\n\r\n<div align=\"center\">\r\n  <a href=\"https://opensource.org/licenses/MIT\">\r\n    <img src=\"https://img.shields.io/badge/License-MIT-yellow.svg\" alt=\"MIT License\">\r\n  </a>\r\n</div>\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n---\r\n\r\n<div align=\"center\">\r\n\r\n## \ud83c\udf10 **Connect with Us**\r\n\r\n**\ud83d\ude80 Powered by [KhaderX](https://KhaderX.com/)** |\r\n**\ud83d\udc68\u200d\ud83d\udcbb Founder: [ABUELTAYEF Khader](https://github.com/KhaderX-com)**\r\n\r\n<div align=\"center\">\r\n  <a href=\"https://github.com/Khader-X\"><img src=\"https://img.shields.io/badge/GitHub-Khader--X-blue?style=for-the-badge&logo=github\" alt=\"GitHub\"></a>\r\n  <a href=\"https://KhaderX.com/\"><img src=\"https://img.shields.io/badge/Website-KhaderX.com-blue?style=for-the-badge&logo=firefox\" alt=\"Website\"></a>\r\n  <a href=\"https://pypi.org/user/KhaderX/\"><img src=\"https://img.shields.io/badge/PyPI-KhaderX-orange?style=for-the-badge&logo=pypi\" alt=\"PyPI\"></a>\r\n</div>\r\n\r\n<div align=\"center\">\r\n  <h3>\u2b50 If you find this tool useful, please star this repo!</h3>\r\n  <a href=\"https://github.com/Khader-X/kx-publish-pypi/stargazers\">\r\n    <img src=\"https://img.shields.io/github/stars/Khader-X/kx-publish-pypi?style=social\" alt=\"GitHub stars\">\r\n  </a>\r\n</div>\r\n\r\n</div>\r\n\r\n<div align=\"center\">\r\n  <img src=\"https://raw.githubusercontent.com/Khader-X/kx-publish-pypi/master/logo/logo-2-1.png\" alt=\"KX-Publish-PyPI Logo\" width=\"150\"/>\r\n</div>\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A friendly CLI tool to check and publish Python packages to TestPyPI/PyPI",
    "version": "1.0.2",
    "project_urls": {
        "Author": "https://github.com/KhaderX-com",
        "Blog": "https://khaderabueltayef.blogspot.com/",
        "Bug Tracker": "https://github.com/Khader-X/kx-publish-pypi/issues",
        "Gravatar": "https://gravatar.com/voiddevotedlyf473f5471f",
        "Homepage": "https://github.com/Khader-X/kx-publish-pypi",
        "Organization": "https://github.com/Khader-X",
        "PyPI": "https://pypi.org/user/KhaderX/",
        "Repository": "https://github.com/Khader-X/kx-publish-pypi",
        "Website": "https://KhaderX.com/"
    },
    "split_keywords": [
        "publish",
        " cli",
        " pypi",
        " packaging",
        " release",
        " kx"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "acb4916428f93aca7d2ca6f51ba4ae06f5c85eac725a25353d1907b4d2e80d33",
                "md5": "f7cf4b120d10b62f1e297216376bd21a",
                "sha256": "9eb0c226f31ce6fb9edf69b00984b405971b1e4ddef0343b8423b17af29aaea0"
            },
            "downloads": -1,
            "filename": "kx_publish_pypi-1.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f7cf4b120d10b62f1e297216376bd21a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 26544,
            "upload_time": "2025-09-10T21:41:36",
            "upload_time_iso_8601": "2025-09-10T21:41:36.734961Z",
            "url": "https://files.pythonhosted.org/packages/ac/b4/916428f93aca7d2ca6f51ba4ae06f5c85eac725a25353d1907b4d2e80d33/kx_publish_pypi-1.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d09045657092f32f198c7727fd1eec49421bf204afcca3404c2fcaa345f36606",
                "md5": "9150770e5e0eadc3ed3517a7ead84d54",
                "sha256": "115475f2a489659b220460e01af3997a00e54fb01a4a316e8296ca32f4bbef05"
            },
            "downloads": -1,
            "filename": "kx_publish_pypi-1.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "9150770e5e0eadc3ed3517a7ead84d54",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 26930,
            "upload_time": "2025-09-10T21:41:37",
            "upload_time_iso_8601": "2025-09-10T21:41:37.704652Z",
            "url": "https://files.pythonhosted.org/packages/d0/90/45657092f32f198c7727fd1eec49421bf204afcca3404c2fcaa345f36606/kx_publish_pypi-1.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-10 21:41:37",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Khader-X",
    "github_project": "kx-publish-pypi",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "kx-publish-pypi"
}
        
Elapsed time: 0.98181s