A Python toolsets library
Project description
toolsets
A Python toolsets library.
Installation
This package requires Python 3.10 or higher. Install with pip:
pip install toolsets
or with uv:
uv pip install toolsets
Usage
import toolsets
# Your code here
Development
To set up the package for development, clone this repository and run:
pip install -e ".[dev]"
Testing
Run tests with:
pytest
Code Formatting
Format code using Ruff:
ruff check --fix --select I && ruff format
CI/CD Setup
This repository uses GitHub Actions for automated testing and publishing. To enable publishing to PyPI, you need to configure two things:
1. GitHub Personal Access Token (GRADIO_PAT)
The changesets/action requires a GitHub Personal Access Token to create pull requests and push commits.
Steps to create and add the token:
- Go to GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic)
- Click "Generate new token (classic)"
- Name it (e.g., "toolsets-ci")
- Set expiration (or no expiration)
- Select the following scopes:
repo(full control of private repositories) — or at minimum:repo:statusrepo_deploymentpublic_repo(if the repo is public)workflow(if you need to trigger workflows)
- Click "Generate token"
- Copy the token immediately (you won't see it again)
- Go to your repository → Settings → Secrets and variables → Actions
- Click "New repository secret"
- Name:
GRADIO_PAT - Value: paste the token you created
- Click "Add secret"
If you're using the publish environment, you may also need to add the secret in:
- Settings → Environments →
publish→ Add secret
2. PyPI Trusted Publishing (OIDC)
The workflow uses OpenID Connect (OIDC) to authenticate with PyPI, which requires configuring a trusted publisher.
Steps to add trusted publisher on PyPI:
- Go to PyPI and log in
- Navigate to Account settings → Manage API tokens → Add a new pending publisher
- Select GitHub as the provider
- Enter the following information:
- Owner: Your GitHub organization or username (e.g.,
your-orgoryour-username) - Repository name: Your repository name (e.g.,
toolsets) - Workflow filename:
.github/workflows/publish.yml - Environment name:
publish(since the workflow usesenvironment: publish)
- Owner: Your GitHub organization or username (e.g.,
- Click "Add"
After adding the trusted publisher, the next workflow run should successfully authenticate with PyPI and publish your package.
Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
License
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file toolsets-0.1.0-py3-none-any.whl.
File metadata
- Download URL: toolsets-0.1.0-py3-none-any.whl
- Upload date:
- Size: 3.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8002e866a1e273e5013b684c0c7f255e0a16fa29291d32b57a0cab73ca36b18
|
|
| MD5 |
f8ca9296d51b9020670243e5133e82a4
|
|
| BLAKE2b-256 |
e029baea4df3ffa3b1de53d297ca8667760a857f2de74c72d0853b065b742e17
|
Provenance
The following attestation bundles were made for toolsets-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on abidlabs/toolsets
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
toolsets-0.1.0-py3-none-any.whl -
Subject digest:
e8002e866a1e273e5013b684c0c7f255e0a16fa29291d32b57a0cab73ca36b18 - Sigstore transparency entry: 798872741
- Sigstore integration time:
-
Permalink:
abidlabs/toolsets@d3994d07d4563b2a6cfdee008c6c40d510e19785 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/abidlabs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@d3994d07d4563b2a6cfdee008c6c40d510e19785 -
Trigger Event:
push
-
Statement type: