py_wlcommands - Python项目
Project description
py_wlcommands
py_wlcommands is a command-line toolset based on Python that provides automated command support for project development, covering common development tasks such as environment initialization, building, testing, formatting, cleaning, and code checking. The project combines Python and Rust technology stacks, demonstrating attention to performance and scalability.
Features
- init: Initialize project environment with Git, virtual environment, i18n, Rust submodule, etc.
- build: Execute build tasks, support Python package building and distribution
- test: Run project tests
- format: Support Python and Rust code formatting (integrated with black, rustfmt, etc.)
- lint: Execute code quality checks
- clean: Clean build artifacts and temporary files
- self: Self-management commands
Installation
From PyPI
pip install py-wlcommands
From Source
# Clone the repository
git clone https://github.com/wl-commands/py_wlcommands.git
cd py_wlcommands
# Install in development mode
pip install -e .
Usage
After installation, you can use the wl command:
# Show help
wl --help
# Initialize a new project
wl init
# Build the project
wl build
# Run tests
wl test
# Format code
wl format
# Lint code
wl lint
# Clean build artifacts
wl clean
# Update the tool itself
wl self update
Development
Prerequisites
- Python >= 3.10
- Rust toolchain
- Git
Setup Development Environment
# Clone the repository
git clone https://github.com/wl-commands/py_wlcommands.git
cd py_wlcommands
# Install dependencies
pip install -e .
# Or if using uv
uv pip install -e .
Running Tests
# Run all tests
pytest tests/
# Or using the wl command
wl test
Building Distribution Packages
# Build with wl command
wl build dist
# Or directly with maturin
maturin build --release --out dist --sdist
CI/CD
This project uses GitHub Actions for continuous integration and deployment:
- CI: Runs tests on multiple platforms (Ubuntu, Windows, macOS) and Python versions (3.10, 3.11, 3.12)
- Code Quality: Runs linting and type checking
- Publish: Automatically publishes to PyPI when a new tag is pushed
License
This project is licensed under the MIT License - see the LICENSE file for details.
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 py_wlcommands-0.2.8-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: py_wlcommands-0.2.8-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 197.4 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de350209226416a661b27881fafe4b5d054cc18ef918bcf6015b8ea92125a176
|
|
| MD5 |
f3ef4daabf48988152a8b8f1875d0e06
|
|
| BLAKE2b-256 |
1a7b8bfb9085b0b3e27d7d3ba9c973728f82c5fee6f8f45a144c19dc84de9874
|