This is a module of Bearsampp project involving Python.
This module provides Python integration for Bearsampp, supporting multiple Python versions with automatic PIP upgrades and wheel package management.
https://bearsampp.com/module/python
This module uses a pure Gradle build system (no wrapper, no Ant dependencies) for packaging Python releases.
# Verify your build environment
gradle verify
# List available Python versions
gradle listVersions
# Build a release for a specific version
gradle release "-PbundleVersion=3.13.5"
# View all available tasks
gradle tasks- Java 8 or higher
- Gradle 7.0 or higher
- 7-Zip (for archive creation)
Comprehensive build system documentation is available in the .gradle-docs/ directory:
- Getting Started Guide - Setup and basic usage
- Build System Guide - Detailed build system information
- Task Reference - Complete task documentation
- Configuration Guide - Configuration options and tuning
# Display build information
gradle info
# Verify build environment
gradle verify
# List available Python versions
gradle listVersions
# Build a release (interactive)
gradle release
# Build a release (non-interactive)
gradle release "-PbundleVersion=3.13.5"
# Clean build artifacts
gradle clean
# Validate Python version structure
gradle validatePythonVersion "-PbundleVersion=3.13.5"
# Show wheel package information
gradle showWheelInfo "-PbundleVersion=3.13.5"- ✅ Pure Gradle build system (no wrapper, no Ant)
- ✅ Support for multiple Python versions
- ✅ Automatic PIP upgrades during build
- ✅ Wheel package download and installation
- ✅ Build caching for faster builds
- ✅ Parallel execution support
- ✅ Interactive and non-interactive build modes
- ✅ Comprehensive verification and validation tasks
- ✅ Automated CI/CD testing for all Python versions
This module includes automated CI/CD testing that validates Python modules.
The CI/CD pipeline automatically:
- 🔍 Detects Python versions from pre-release files in PRs
- 📥 Downloads and extracts Python modules
- ✅ Verifies executables (python.exe, pip.exe)
- 🧪 Tests basic functionality (version, pip, imports)
- 📊 Generates detailed test reports
- 💬 Comments on pull requests with results
Tests run automatically when:
- Pull requests include pre-release
.7zfiles (e.g.,bearsampp-python-3.13.5-2025.8.21.7z) - PR titles contain version numbers as fallback (e.g., "Add Python 3.13.5")
- Pushes to main branch (tests latest version only)
- Manual workflow dispatch
See CI/CD Workflow Documentation for details.
module-python/
├── .gradle-docs/ # Build system documentation
├── bin/ # Python version directories
│ └── python{version}/
│ ├── bin/
│ ├── wheel/
│ └── bearsampp.conf
├── build.gradle # Main build script
├── settings.gradle # Gradle settings
├── gradle.properties # Gradle configuration
├── build.properties # Bundle configuration
└── releases.properties # Available Python releases
Issues must be reported on Bearsampp repository.
Contributions are welcome! Please read the build system documentation before contributing.
See LICENSE file for details.