Add comprehensive developer tooling for Gitea integration: CLI Tool (cmd/gitea-cli/): - gitea-cli auth login/logout/status - Authentication management - gitea-cli upload release-asset - Chunked upload with progress - gitea-cli upload resume - Resume interrupted uploads - gitea-cli upload list - List pending upload sessions - Parallel chunk uploads with configurable workers - SHA256 checksum verification - Progress bar with speed and ETA display Go SDK (sdk/go/): - GiteaClient with token authentication - User, Repository, Release, Attachment types - ChunkedUpload with parallel workers - Progress callbacks for upload tracking - Functional options pattern (WithChunkSize, WithParallel, etc.) Python SDK (sdk/python/): - GiteaClient with requests-based HTTP - Full type hints and dataclasses - ThreadPoolExecutor for parallel uploads - Resume capability for interrupted uploads - Exception hierarchy (APIError, UploadError, etc.) TypeScript SDK (sdk/typescript/): - Full TypeScript types and interfaces - Async/await API design - Browser and Node.js compatible - Web Crypto API for checksums - ESM and CJS build outputs All SDKs support: - Chunked uploads for large files - Parallel upload workers - Progress tracking with callbacks - Checksum verification - Resume interrupted uploads 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
53 lines
1.7 KiB
Python
53 lines
1.7 KiB
Python
#!/usr/bin/env python
|
|
# Copyright 2026 The Gitea Authors. All rights reserved.
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
from setuptools import setup, find_packages
|
|
|
|
with open("README.md", "r", encoding="utf-8") as fh:
|
|
long_description = fh.read()
|
|
|
|
setup(
|
|
name="gitea-sdk",
|
|
version="1.0.0",
|
|
author="The Gitea Authors",
|
|
author_email="contact@gitea.io",
|
|
description="Python SDK for the Gitea API with chunked upload support",
|
|
long_description=long_description,
|
|
long_description_content_type="text/markdown",
|
|
url="https://gitea.io",
|
|
project_urls={
|
|
"Bug Tracker": "https://github.com/go-gitea/gitea/issues",
|
|
"Documentation": "https://docs.gitea.io/sdk/python",
|
|
"Source Code": "https://github.com/go-gitea/gitea/tree/main/sdk/python",
|
|
},
|
|
packages=find_packages(),
|
|
classifiers=[
|
|
"Development Status :: 5 - Production/Stable",
|
|
"Intended Audience :: Developers",
|
|
"License :: OSI Approved :: MIT License",
|
|
"Operating System :: OS Independent",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.8",
|
|
"Programming Language :: Python :: 3.9",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
"Topic :: Software Development :: Version Control :: Git",
|
|
],
|
|
python_requires=">=3.8",
|
|
install_requires=[
|
|
"requests>=2.25.0",
|
|
],
|
|
extras_require={
|
|
"dev": [
|
|
"pytest>=7.0",
|
|
"pytest-cov>=4.0",
|
|
"black>=23.0",
|
|
"mypy>=1.0",
|
|
"types-requests>=2.25",
|
|
],
|
|
},
|
|
)
|