Skip to main content

A high-performance Python code parsing and refactoring tool written in Rust

Project description

PyRustor

PyPI version PyPI downloads Python versions License Rust CI

English | 中文

A blazingly fast Python code parsing and refactoring tool written in Rust with Python bindings.

🚀 Features

🌟 Core Advantages

  • ⚡ Superior Performance: Built on Ruff's blazing-fast Python parser - 10-100x faster than traditional Python tools
  • 🔄 Python AST Parsing: Parse Python code into AST for analysis using Ruff's proven parsing engine
  • 🛠️ Code Refactoring: Rename functions, classes, modernize syntax
  • 🧵 Safe Concurrency: Built with Rust's fearless concurrency
  • 🐍 Python Bindings: Easy-to-use Python API

🎛️ Refactoring Operations

  • Function Renaming: Rename functions throughout codebase
  • Class Renaming: Rename classes and update references
  • Import Modernization: Update deprecated imports to modern alternatives
  • Syntax Modernization: Convert old Python syntax to modern patterns
  • Custom Transformations: Apply custom AST transformations

🚀 Quick Start

pip install pyrustor
import pyrustor

# Parse Python code
parser = pyrustor.Parser()
ast = parser.parse_string("def hello(): pass")

# Create refactor instance
refactor = pyrustor.Refactor(ast)
refactor.rename_function("hello", "greet")

# Get the modified code
result = refactor.get_code()
print(result)  # def greet(): pass

✨ Key Features Demonstration

import pyrustor

# 1. Function and Class Renaming
code = '''
def old_function(x, y):
    return x + y

class OldClass:
    def method(self):
        return old_function(1, 2)
'''

parser = pyrustor.Parser()
ast = parser.parse_string(code)
refactor = pyrustor.Refactor(ast)

# Rename function and class
refactor.rename_function("old_function", "new_function")
refactor.rename_class("OldClass", "NewClass")

print("Refactored code:")
print(refactor.get_code())

# 2. Import Modernization
legacy_code = '''
import ConfigParser
import imp
from urllib2 import urlopen
'''

ast2 = parser.parse_string(legacy_code)
refactor2 = pyrustor.Refactor(ast2)

# Modernize imports
refactor2.replace_import("ConfigParser", "configparser")
refactor2.replace_import("imp", "importlib")
refactor2.replace_import("urllib2", "urllib.request")

print("Modernized imports:")
print(refactor2.get_code())

# 3. Get detailed change information
print("Changes made:")
for change in refactor2.change_summary():
    print(f"  - {change}")

📦 Installation

From PyPI (Recommended)

# Standard installation (Python version-specific wheels)
pip install pyrustor

# ABI3 installation (compatible with Python 3.8+)
pip install pyrustor --prefer-binary

Prerequisites (Building from Source)

  • Rust 1.87+ (for building from source)
  • Python 3.8+
  • maturin (for building Python bindings)

Build from Source

# Clone the repository
git clone https://github.com/loonghao/PyRustor.git
cd PyRustor

# Install dependencies
just install

# Build the extension
just build

🔧 Usage Examples

Basic Operations

import pyrustor

# Parse Python code
parser = pyrustor.Parser()
ast = parser.parse_string("""
def old_function():
    return "Hello, World!"

class OldClass:
    pass
""")

# Create refactor instance
refactor = pyrustor.Refactor(ast)

# Rename function
refactor.rename_function("old_function", "new_function")

# Rename class
refactor.rename_class("OldClass", "NewClass")

# Get refactored code
print(refactor.get_code())

File Operations

import pyrustor

# Parse from file
parser = pyrustor.Parser()
ast = parser.parse_file("example.py")

# Apply refactoring
refactor = pyrustor.Refactor(ast)
refactor.modernize_syntax()

# Save to file
refactor.save_to_file("refactored_example.py")

# Get change summary
print(refactor.change_summary())

Complete Refactoring Workflow

import pyrustor

def modernize_legacy_code(source_code: str) -> str:
    """Complete workflow for modernizing legacy Python code."""
    parser = pyrustor.Parser()
    ast = parser.parse_string(source_code)
    refactor = pyrustor.Refactor(ast)

    # Step 1: Modernize imports
    refactor.replace_import("ConfigParser", "configparser")
    refactor.replace_import("urllib2", "urllib.request")
    refactor.replace_import("imp", "importlib")

    # Step 2: Rename outdated functions/classes
    refactor.rename_function("old_function", "new_function")
    refactor.rename_class("LegacyClass", "ModernClass")

    # Step 3: Apply syntax modernization
    refactor.modernize_syntax()

    # Step 4: Get the final result
    return refactor.get_code()

# Example usage
legacy_code = '''
import ConfigParser
import urllib2

def old_function():
    config = ConfigParser.ConfigParser()
    response = urllib2.urlopen("http://example.com")
    return response.read()

class LegacyClass:
    def __init__(self):
        self.data = old_function()
'''

modernized = modernize_legacy_code(legacy_code)
print("Modernized code:")
print(modernized)

# Get detailed change information
parser = pyrustor.Parser()
ast = parser.parse_string(legacy_code)
refactor = pyrustor.Refactor(ast)
refactor.replace_import("ConfigParser", "configparser")
refactor.rename_function("old_function", "new_function")

print("\nChanges made:")
for change in refactor.change_summary():
    print(f"  - {change}")

Error Handling and Validation

import pyrustor

def safe_refactor(code: str, old_name: str, new_name: str) -> tuple[str, bool]:
    """Safely refactor code with error handling."""
    try:
        parser = pyrustor.Parser()
        ast = parser.parse_string(code)
        refactor = pyrustor.Refactor(ast)

        # Attempt to rename function
        refactor.rename_function(old_name, new_name)

        return refactor.get_code(), True

    except Exception as e:
        print(f"Refactoring failed: {e}")
        return code, False  # Return original code if refactoring fails

# Example usage
code = "def hello(): pass"
result, success = safe_refactor(code, "hello", "greet")

if success:
    print("Refactoring successful:")
    print(result)
else:
    print("Refactoring failed, original code preserved")

Advanced Refactoring

import pyrustor

parser = pyrustor.Parser()
ast = parser.parse_string("""
import ConfigParser
from imp import reload

def format_string(name, age):
    return "Name: %s, Age: %d" % (name, age)
""")

refactor = pyrustor.Refactor(ast)

# Modernize imports
refactor.replace_import("ConfigParser", "configparser")
refactor.replace_import("imp", "importlib")

# Modernize syntax
refactor.modernize_syntax()

print(refactor.to_string())
print("Changes made:")
print(refactor.change_summary())

Ruff Formatter Integration

import pyrustor

# Messy code that needs refactoring and formatting
messy_code = '''def   old_function(  x,y  ):
    return x+y

class   OldClass:
    def __init__(self,name):
        self.name=name'''

parser = pyrustor.Parser()
ast = parser.parse_string(messy_code)
refactor = pyrustor.Refactor(ast)

# Refactor with automatic formatting
refactor.rename_function_with_format("old_function", "new_function", apply_formatting=True)
refactor.rename_class_with_format("OldClass", "NewClass", apply_formatting=True)

# Or apply formatting at the end
refactor.modernize_syntax()
formatted_result = refactor.refactor_and_format()

print("Beautifully formatted result:")
print(formatted_result)

Building pyupgrade-style Tools

import pyrustor

def modernize_python_code(source_code: str) -> str:
    """Build a pyupgrade-style modernization tool."""
    parser = pyrustor.Parser()
    ast = parser.parse_string(source_code)
    refactor = pyrustor.Refactor(ast)

    # Apply common modernizations
    refactor.replace_import("ConfigParser", "configparser")
    refactor.replace_import("urllib2", "urllib.request")
    refactor.modernize_syntax()  # % formatting -> f-strings, etc.

    # Return beautifully formatted result
    return refactor.refactor_and_format()

# Example usage
legacy_code = '''import ConfigParser
def greet(name):
    return "Hello, %s!" % name'''

modernized = modernize_python_code(legacy_code)
print(modernized)
# Output: Clean, modern Python code with f-strings and updated imports

📚 API Reference

Parser Class

parser = pyrustor.Parser()

# Parse from string
ast = parser.parse_string(source_code)

# Parse from file
ast = parser.parse_file("path/to/file.py")

# Parse directory
results = parser.parse_directory("path/to/dir", recursive=True)

PythonAst Class

# Check if AST is empty
if ast.is_empty():
    print("No code found")

# Get statistics
print(f"Statements: {ast.statement_count()}")
print(f"Functions: {ast.function_names()}")
print(f"Classes: {ast.class_names()}")
print(f"Imports: {ast.imports()}")

# Convert back to string
source_code = ast.to_string()

Refactor Class

refactor = pyrustor.Refactor(ast)

# Basic refactoring
refactor.rename_function("old_name", "new_name")
refactor.rename_class("OldClass", "NewClass")
refactor.replace_import("old_module", "new_module")

# Refactoring with automatic formatting
refactor.rename_function_with_format("old_name", "new_name", apply_formatting=True)
refactor.rename_class_with_format("OldClass", "NewClass", apply_formatting=True)
refactor.modernize_syntax_with_format(apply_formatting=True)

# Advanced refactoring
refactor.modernize_syntax()
refactor.modernize_imports()

# Formatting options
refactor.format_code()  # Apply Ruff formatting
formatted_result = refactor.refactor_and_format()  # Refactor + format in one step
conditional_format = refactor.to_string_with_format(apply_formatting=True)

# Get results
refactored_code = refactor.to_string()
changes = refactor.change_summary()

# Save to file
refactor.save_to_file("output.py")

🧪 Development

Setup Development Environment

# Install just (command runner)
cargo install just

# Setup development environment
just dev

# Run tests
just test

# Format code
just format

# Run linting
just lint

# Build release
just release

Testing

PyRustor has comprehensive test coverage with 257+ tests across Rust and Python components.

# Run all tests (Rust + Python)
just test

# Run specific test categories
just test-rust          # 91 Rust tests
just test-python        # 166 Python tests

# Run with coverage reporting
just coverage-all       # Generate coverage reports for both languages
just coverage-python    # Python coverage only
just coverage-rust      # Rust coverage only

# Run specific test types
pytest tests/ -m "unit"           # Unit tests only
pytest tests/ -m "integration"    # Integration tests only
pytest tests/ -m "benchmark"      # Performance benchmarks
pytest tests/ -m "not slow"       # Skip slow tests

Test Categories

  • Unit Tests: Core functionality testing
  • Integration Tests: End-to-end workflow testing
  • Edge Case Tests: Boundary conditions and error handling
  • Performance Tests: Benchmarking and regression detection
  • Unicode Tests: International character support
  • Error Handling Tests: Robust error recovery

Coverage Reports

After running coverage tests, view detailed reports:

  • Python: htmlcov/index.html
  • Rust: target/tarpaulin/tarpaulin-report.html

Quality Assurance

# Run all quality checks
just check-all

# Individual quality checks
just quality            # Code quality analysis
just security           # Security vulnerability scanning
just performance        # Performance benchmarking
just docs-check         # Documentation validation

# CI-specific checks
just ci-check-all       # All checks optimized for CI

Available Commands

just --list  # Show all available commands

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests
  5. Submit a pull request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • Ruff - PyRustor is built on Ruff's high-performance Python AST parsing engine (ruff_python_ast). Ruff is an extremely fast Python linter and code formatter written in Rust, developed by Astral. We leverage Ruff's proven parsing technology to deliver blazing-fast Python code analysis and refactoring capabilities.
  • PyO3 for excellent Python-Rust bindings
  • maturin for seamless Python package building

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

pyrustor-0.1.19.tar.gz (54.1 kB view details)

Uploaded Source

Built Distributions

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

pyrustor-0.1.19-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (951.9 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl (971.7 kB view details)

Uploaded PyPymanylinux: glibc 2.5+ i686

pyrustor-0.1.19-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (952.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl (972.2 kB view details)

Uploaded PyPymanylinux: glibc 2.5+ i686

pyrustor-0.1.19-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (948.5 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl (974.4 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.5+ i686

pyrustor-0.1.19-cp313-cp313-win_amd64.whl (844.8 kB view details)

Uploaded CPython 3.13Windows x86-64

pyrustor-0.1.19-cp313-cp313-win32.whl (838.7 kB view details)

Uploaded CPython 3.13Windows x86

pyrustor-0.1.19-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (949.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (976.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.5+ i686

pyrustor-0.1.19-cp313-cp313-macosx_10_12_x86_64.whl (921.9 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pyrustor-0.1.19-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (1.8 MB view details)

Uploaded CPython 3.13macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

pyrustor-0.1.19-cp312-cp312-win_amd64.whl (845.1 kB view details)

Uploaded CPython 3.12Windows x86-64

pyrustor-0.1.19-cp312-cp312-win32.whl (838.8 kB view details)

Uploaded CPython 3.12Windows x86

pyrustor-0.1.19-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (949.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (976.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.5+ i686

pyrustor-0.1.19-cp312-cp312-macosx_10_12_x86_64.whl (922.2 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pyrustor-0.1.19-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (1.8 MB view details)

Uploaded CPython 3.12macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

pyrustor-0.1.19-cp311-cp311-win_amd64.whl (846.9 kB view details)

Uploaded CPython 3.11Windows x86-64

pyrustor-0.1.19-cp311-cp311-win32.whl (842.8 kB view details)

Uploaded CPython 3.11Windows x86

pyrustor-0.1.19-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (952.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (971.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.5+ i686

pyrustor-0.1.19-cp311-cp311-macosx_10_12_x86_64.whl (929.1 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pyrustor-0.1.19-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (1.8 MB view details)

Uploaded CPython 3.11macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

pyrustor-0.1.19-cp310-cp310-win_amd64.whl (847.1 kB view details)

Uploaded CPython 3.10Windows x86-64

pyrustor-0.1.19-cp310-cp310-win32.whl (842.9 kB view details)

Uploaded CPython 3.10Windows x86

pyrustor-0.1.19-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (952.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (972.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.5+ i686

pyrustor-0.1.19-cp39-cp39-win_amd64.whl (847.1 kB view details)

Uploaded CPython 3.9Windows x86-64

pyrustor-0.1.19-cp39-cp39-win32.whl (843.0 kB view details)

Uploaded CPython 3.9Windows x86

pyrustor-0.1.19-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (952.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (972.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.5+ i686

pyrustor-0.1.19-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (952.4 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl (972.4 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.5+ i686

pyrustor-0.1.19-cp38-abi3-win_amd64.whl (850.0 kB view details)

Uploaded CPython 3.8+Windows x86-64

pyrustor-0.1.19-cp38-abi3-win32.whl (838.8 kB view details)

Uploaded CPython 3.8+Windows x86

pyrustor-0.1.19-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (953.2 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ x86-64

pyrustor-0.1.19-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl (979.6 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.5+ i686

pyrustor-0.1.19-cp38-abi3-macosx_11_0_arm64.whl (896.2 kB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

pyrustor-0.1.19-cp38-abi3-macosx_10_12_x86_64.whl (929.9 kB view details)

Uploaded CPython 3.8+macOS 10.12+ x86-64

File details

Details for the file pyrustor-0.1.19.tar.gz.

File metadata

  • Download URL: pyrustor-0.1.19.tar.gz
  • Upload date:
  • Size: 54.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19.tar.gz
Algorithm Hash digest
SHA256 b89a9ff5e84466121544b41d684524b35f0ca1d3bbdc169c4b2e64921aff1aab
MD5 5411e0c399e52d4ee6cb69cb75eaba4b
BLAKE2b-256 e7771f6debd673c0906dd1c4fccdb5f5a47186ff87417396d7b233e6afa63133

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19.tar.gz:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 76e335fa5d50c9659329a21e5e948f3122d805a7b823f5c07de5b96455f8ff55
MD5 0025e31b0b2791ec9567d25ae491b8f2
BLAKE2b-256 768f14461f584c3a10f96df6d742e3477b43f248ad9e6920706397c6c44dd38d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 8d7e7b291828f5a22f3db57e1783f50d4df1609495a55c95902df93bdf9c6b7a
MD5 b2b267873853fb4e5f5523cf3f7511b6
BLAKE2b-256 c4c79ac5b8fc4c6d34d72beab534aa69b247c72e7bd8c8396956c3cd4bb66055

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5f3bd994d0946b4b88858537cb0c68e548464950dfa2bb3e03b293aba111b6c3
MD5 4ba817e61043cb6358cb3af644bb34b7
BLAKE2b-256 5a6fdde252b62fa0439b18a3d91f845ee5d23b156dbc2387b88f374e6f55cbb2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 024c6692608ada04949e87e9f322df1961098aa2f0a6ee9900059a4785900dd4
MD5 2ca6e28db0b6233a8631b9ea20200a8e
BLAKE2b-256 c6522ac9c27c1f96d31bc600b4bec6d53e4297fd6d4e4223af4027590595c6a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a6fe4180c5fadce9802cc1e57bdf801f11909f9e8c86b22f7c28eb860439aed9
MD5 e99ebcb7398572657d339b413213f547
BLAKE2b-256 0cd268a5fb8149f0bbf3eed1511c7b377fb2bf634f6d392dabdaccb5a62a8980

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 45a06678b60ab0b797a4d8ab8dc129e2c2e94f5800700954726bd6a67e3ff2a3
MD5 e2bb152ceb7011d60d42be1ea056f34e
BLAKE2b-256 aed9d52bd7d609eb5f1d7fea0ac817bcc4f86017599aaffeb2350e17fc920d88

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 844.8 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 5e96f420621b239ac1b52fb89f3da4eae5a117fdf657c77b5adc18ffb7b6e19f
MD5 0a3be4e3872fd5dd3adffb2c0a0925d7
BLAKE2b-256 e726ac976b58265e6184969ba6acb68c766f29b9615e7dde742ba0ac9e3c3f96

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp313-cp313-win_amd64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp313-cp313-win32.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp313-cp313-win32.whl
  • Upload date:
  • Size: 838.7 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 56e6badd9099a2212315d2d8d1160c2926fe740ee143016e0cb0c3801a19ce6d
MD5 3ee35a7b965b0c52f52fd71df7d9297f
BLAKE2b-256 4790f81e6d70f8cf7f2408e0b2e2040f6451c489470cfbe2fbfb2376ec4876b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp313-cp313-win32.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6091b38eb4ced0b3095063bfce432ef9f34673f5e3de43e132fa146bb14beb2a
MD5 dbaa8d0a54c8f03d7d61bc25528ef547
BLAKE2b-256 355ba02b0a9068609d2106c26d0f7bef44f9995d7c3569e7c74c49992a956c4b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 0706382a4a6271b75758a529752983d5e073bdb7dc9f82d12a3d5aba3158c27d
MD5 d960cedc24e83343b2a5fc3d90642985
BLAKE2b-256 442201d2a84b4d239ea74d6ada0d515bd5e9f53ef4277c5a92cc83a6e2725ba3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 612e568e36afbc1514d1dd931be665e7a7197cc4b0aee17545f700381f72c71a
MD5 25f1fe57040a4e2ee3e7ed692c48e274
BLAKE2b-256 421e5edcf442843c3911e97e4aea1bd9fcf3490e0dd8bd82276523573a8ac89d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 c6845fbab9ffec43d44911833b6885117fcb6ad936b39b985a5374c932a58037
MD5 440e2d27d456f0abd62b463dee6960fa
BLAKE2b-256 c7ede04a67c2fc4caab2f7fa4f764565a32196794deb3bfce59ee8abf0ce200d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 845.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e0cff7fedf3eaa06671485979418c01b150047a82e280e8906545663bdb47b05
MD5 d36da037fa1cc96402ab5305850bf0bf
BLAKE2b-256 f59f951644d0727b9c41528b792b7eb480a883558be7aa2dcbefbdecb9bbe1b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp312-cp312-win_amd64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp312-cp312-win32.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp312-cp312-win32.whl
  • Upload date:
  • Size: 838.8 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 82747f3d781ab8f7d242d93e50e807acae748d6c8c6617ccf14092580a6fd4da
MD5 3d36e54428405bee872edb65567b9aeb
BLAKE2b-256 59c2265adc10ed3002a052b80dfc1601b75ebb04502ca1ff43e03dee29b38a3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp312-cp312-win32.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0fcece71c613b79d75c4f64588affc10d125c6ae1f5eb28805b98d2c5e43c3e2
MD5 312b5da9f3bd768e7e8f4356323f489f
BLAKE2b-256 3544203a42da69e0184d139253ab47a29a27144f598b93c88e60c4783440f216

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 6557a8d794cee6d37ef0a73e482bfdb5b17633b0d52d23ce100d4765392871d7
MD5 1ca505c4ddb0c65537593f5ae5c5e995
BLAKE2b-256 59a3a1f1796f4fbe0323b3e12a46b0e3a200d41de93d78ad3eb44d91e7667ccf

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 48fd2d51024fec76bfafe04fe258d967072fbf667a672c77900d30a410fa0cbd
MD5 602725ebdc0f05f89dd95b2837d9f9e1
BLAKE2b-256 9ef38a5af0e295f5a17b60197cb16a2c16d52116cdfbbb748c26586b716a3758

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 ff030f78530d77579d42568003ead8af4006bc6f8f106bcbf5b0b521c6191db3
MD5 e568a193b9325271d9adb7688b16cdb7
BLAKE2b-256 649d956af45a4bbc7a34e20972b2e08580844c5bd2a39be6cbe813e3ceaa1fd6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 846.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 75145bc97113de0d08379c5363a57410cd8a044a2b5e6a1e46f323b48fc04c49
MD5 672ff252ab5506d717a4bc6e3746fa54
BLAKE2b-256 23eafb38decfb2c774e5de3720181aa1aa7e926337d5591d7d7dbf3754abd95c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp311-cp311-win_amd64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp311-cp311-win32.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp311-cp311-win32.whl
  • Upload date:
  • Size: 842.8 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 047e0da2484c8f486b1774d2ac97622004489aee5bd564791ceb6c77e14ceb5b
MD5 80e94fa489a16c4cdb1a5eba5bd86cd5
BLAKE2b-256 8d4d360ab599ee522eb9dc10118b367d4ba43c09d96dc1f1caea1cba972d9856

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp311-cp311-win32.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 71f1d024a233be0921c429e81ae2715300d8a3367dff60a8a15934cd1cd84572
MD5 28a90c746c1d96d8548b9eaef738d448
BLAKE2b-256 c5b5354a345fb94f7c9ae6b1bfe4e0abe8a50e889993d2e18c52fcc28bc02af0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 9032237f973d18209c9d759daa4840b3d49e7ff74dccf653d3810d2b848472dc
MD5 b540f96f4c62965614e670c1d0effea0
BLAKE2b-256 a5709e54f9855a8c682fbf88738c49c1ef4a0ac12aa58732c52b75ed373de9fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a03bdd7068687f598e049a928d130f6c4a29512cf6c7e18147a552c2f852c7e8
MD5 550434398c5019b1c340fbf1fe41ba9b
BLAKE2b-256 8d28d5f5eb84c4ab351cab8afe9a73c9dcf539f73ebef4655f3e0d05b4efad86

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 41138c2da657ff7d4d3720541ff99b18c4b3d1c28d8f7df0f927cd6f648180eb
MD5 23ac5f464b6517f77b6ebff260ff8d0d
BLAKE2b-256 dc9b087f0888e0745ac32462636707f8ddf15b4ba1722a50900e0ed034c3ab44

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 847.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c8687e20a751882b0cbb419e9edd799741aa73a319faaec7cf81915edafc4bf3
MD5 5b68b4bb3fb4048af4eb73428534935f
BLAKE2b-256 0c8d11eec49c96707f0bf701c82b06991a7b43a60f61279eb2c3121b7759544e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp310-cp310-win_amd64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp310-cp310-win32.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp310-cp310-win32.whl
  • Upload date:
  • Size: 842.9 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 2c03c421ef9500cc227835fc421144e1e6d14d003a8bf8b6b21555e6fa512d00
MD5 43b183ce81e8580beea5661daf8d7d88
BLAKE2b-256 59e9284c24578255273b0636ba2ead7974be836be119c8d318ac64cbbec5f9c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp310-cp310-win32.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b99da2efa2e47de7fea51abf75aab707ef74ffcb6b007a876ec80e71fe2a4c53
MD5 b2572da8d351ba76e593cde544584860
BLAKE2b-256 5cb798afcbc58b384e4f425d11de7c16ee167e5a9ca1a002e704c972c3f17419

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 7b2c4f9a830e58ac3856734fa10fc4d13764c601034ee26f6e96426862fb8130
MD5 4ee36ff2e6f61230eef9b86b7b156491
BLAKE2b-256 e5ccbf548c0e970361f0e160abf46e24f03c93caea0048cdd117f9699fa92ae4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 847.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 d0c518bf11b24c3769e39b791bca695a1831be35971e0eb1296af3537b310a9f
MD5 1751cdb1720b64da3db1d1b25b6f84a0
BLAKE2b-256 98edfd8a34a602abca63a6e5cf9f3781965a83fcbb95f4f2d5f05dc75ff5b91a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp39-cp39-win_amd64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp39-cp39-win32.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp39-cp39-win32.whl
  • Upload date:
  • Size: 843.0 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 c0bbbab4cedb2fee347d3f57dd3d6f3541eb568fc62844473c2c9010398e3032
MD5 91594e7b8cf03ff24cbbd864fa336a25
BLAKE2b-256 7eaaaa2b8d15a25eff08ca7c811dfcf21732c42dc543af4bd1292f9f1e478438

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp39-cp39-win32.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 999f03ffbe8432be5dd1f80d2fffc16683db84d0bdcbfb6d9e02df2eacc4b918
MD5 97a6dd4c185e18a44b15c20638147c28
BLAKE2b-256 509a472e56e8fa11415bad1e7bf3c10d1cf8e70ca0cbe8a6add7ba9a072729a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 0113bcfb083bf271a2c8f34a6cc86d0246e210b8cb9a0310361e29c2146239b6
MD5 5f4f452964e7474675f37f2bd0d15bf2
BLAKE2b-256 dffb1cb1dcf31209ce18c71febf621999695f14b3fea1e534e4ff0bcf98e1f49

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a1785a0bb32d3cef95983d53a2013fe7149455151018b5a8fc0a32478052cc2f
MD5 82ecc8750aa9077020e5408cdcf72a83
BLAKE2b-256 edf83ad063a57c5267d6f317da8b53609a8bfd879ea9df7307cc29253e9e37f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 7112e6b94cafd61569e64be79f3865b9e268f1b61c6ea4acb001f4e4d4638d50
MD5 30a3908f928707774dd7141a9833426b
BLAKE2b-256 ab1597c66838b57d633c54902a98159f169abae097dd4d95e27246fc25440aec

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp38-abi3-win_amd64.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp38-abi3-win_amd64.whl
  • Upload date:
  • Size: 850.0 kB
  • Tags: CPython 3.8+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 74611faf97001049dd0b41ddfe818243f1a4274b241f23520aafa40909616d0f
MD5 63fd6bb95501ef74896f2c2dabb02c52
BLAKE2b-256 b885c81451f22d91a24e5e4490af2ff5cb4e51532fe4b30f312c08b70f034fb9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp38-abi3-win_amd64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp38-abi3-win32.whl.

File metadata

  • Download URL: pyrustor-0.1.19-cp38-abi3-win32.whl
  • Upload date:
  • Size: 838.8 kB
  • Tags: CPython 3.8+, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyrustor-0.1.19-cp38-abi3-win32.whl
Algorithm Hash digest
SHA256 9e10acaab36ff6e9674ebcac71b3a3bbcfeefa6a57ec29b4bf154a3c21a72a9e
MD5 e3f196f0336343ec42613aeb94994240
BLAKE2b-256 4f3f8b2349a2acf9e1983eaf708bcf17188a263ae2eb98c9a100f5502a2d6917

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp38-abi3-win32.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bcdb4956296ab7b8c4ef6bc31d9459515073a6a50e407d500735f8c068dee12b
MD5 ef034a3132a81534360176db946cb302
BLAKE2b-256 547c452cfae51c3c21aa02c7ffbdae4f6890c084f0cc185a3282d69e692d674a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 bfc43713000ad2d7503bb992bb1d5ae51855a427f8f5cd05235802a8ff77ad49
MD5 d4815b2aa34a154343ba4f5b56daf6ca
BLAKE2b-256 98f03e3720e88315b36f595d0628129ad3d6288e6864bd61f77f90fa6384455b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0cb8d2e6940bcdff8bc13ab063295208c152f47af49d0d31f7d376aa75885ab3
MD5 5eb4285ec82baf1fa763cca101e28c7a
BLAKE2b-256 6b7a23cb7d422148d48ba086b524846e9960686b6e0f3c14125024b58c61ad1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp38-abi3-macosx_11_0_arm64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrustor-0.1.19-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrustor-0.1.19-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1c7b841ed4331f7d1b5dada42650f013ee03691b90f95c780ff70ff1ff42d5c1
MD5 fe7581c81744bf552b800770e4578878
BLAKE2b-256 4c18ad316c93df673071ed9c55ebf31d6a1129ee061d7891dd01ac74897a3e4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrustor-0.1.19-cp38-abi3-macosx_10_12_x86_64.whl:

Publisher: release.yml on loonghao/PyRustor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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