Skip to main content

py_wlcommands - Python项目

Project description

py_wlcommands

CI PyPI version Python Versions

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_wlcommands-0.1.12.tar.gz (447.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_wlcommands-0.1.12-cp310-cp310-win_amd64.whl (169.7 kB view details)

Uploaded CPython 3.10Windows x86-64

File details

Details for the file py_wlcommands-0.1.12.tar.gz.

File metadata

  • Download URL: py_wlcommands-0.1.12.tar.gz
  • Upload date:
  • Size: 447.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for py_wlcommands-0.1.12.tar.gz
Algorithm Hash digest
SHA256 13d976056da80029412a0cd6b8f3b8966eda28e4874adf0927865e3bfb1feeb1
MD5 4fcff59fd0354a86c127aa0c48d1c807
BLAKE2b-256 7582d82f344e6ee57c91e61dffdb80d5406d4aae1208183d9ad83c0e243fe9bf

See more details on using hashes here.

File details

Details for the file py_wlcommands-0.1.12-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for py_wlcommands-0.1.12-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 4a22c5dfc3cf0ef6c12fe640102f48ccee4223cf175e4c19dd76ce743465d44b
MD5 de0dd0e8cbc7c7f559836c91f2a7af61
BLAKE2b-256 d44c5d8d7e81d3c294807de25b2ed684893a417940535e91159b3e5919c53483

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page