Complete documentation for the Bearsampp Python module Gradle build system.
This directory contains comprehensive documentation for building the Bearsampp Python module using pure Gradle (no wrapper, no Ant dependencies).
Essential commands and quick tips.
- Essential commands (build, verify, info)
- Common workflows
- Configuration file examples
- Task groups overview
- Gradle options
- Quick tips
Best for: Quick lookup, command reference
Start here if you're new to the build system.
- Prerequisites and installation
- Project structure overview
- Quick start guide
- Common tasks
- Build process explanation
- Configuration files overview
- Troubleshooting basics
Best for: First-time users, setup and installation
Deep dive into the build system architecture.
- Build system overview
- Architecture and components
- Build tasks in detail
- Build lifecycle
- Advanced features (caching, parallel execution)
- Customization options
- Performance optimization
- Troubleshooting and debugging
Best for: Understanding how the build works, advanced usage
Complete reference for all available tasks.
- Build tasks (release, clean)
- Verification tasks (verify, validate*)
- Help tasks (info, list*, show*)
- Task parameters and options
- Task dependencies
- Common task combinations
- Exit codes and output
Best for: Quick reference, finding specific tasks
Detailed configuration options and settings.
- Configuration files (build.properties, gradle.properties, etc.)
- Python version configuration
- Build path configuration
- Archive format options
- JVM configuration
- Performance tuning
- Environment variables
- Advanced configuration
Best for: Customizing the build, performance tuning
# Verify environment
gradle verify
# List available Python versions
gradle listVersions
# Build a release
gradle release "-PbundleVersion=3.13.5"
# Clean build artifacts
gradle clean
# View build information
gradle info
# List all tasks
gradle tasks| File | Purpose |
|---|---|
build.gradle |
Main build script |
settings.gradle |
Gradle settings |
gradle.properties |
Gradle configuration |
build.properties |
Bundle configuration |
releases.properties |
Available Python releases |
module-python/
├── .gradle-docs/ # This documentation
├── bin/ # Python versions
│ └── python{version}/
│ ├── bin/
│ ├── wheel/
│ └── bearsampp.conf
├── build.gradle # Build script
├── settings.gradle # Settings
├── gradle.properties # Gradle config
└── build.properties # Bundle config
- ✅ No Gradle wrapper scripts
- ✅ No Ant dependencies
- ✅ Native Gradle implementation
- ✅ Modern build practices
- ✅ Automatic PIP upgrades
- ✅ Wheel package management
- ✅ Multiple version support
- ✅ PyQt5 exclusion handling
- ✅ Incremental builds
- ✅ Build caching
- ✅ Parallel execution
- ✅ Configuration cache
- ✅ Interactive & non-interactive modes
- ✅ Environment verification
- ✅ Property validation
- ✅ Version structure validation
- ✅ Dependency checking
# 1. Verify environment
gradle verify
# 2. View available versions
gradle listVersions
# 3. Validate a version
gradle validatePythonVersion "-PbundleVersion=3.13.5"
# 4. Build release
gradle release "-PbundleVersion=3.13.5"# Check configuration
gradle validateProperties
# Build release
gradle release "-PbundleVersion=3.13.5"
# Clean up
gradle clean# Verify environment
gradle verify
# Check version structure
gradle validatePythonVersion "-PbundleVersion=3.13.5"
# Check wheel info
gradle showWheelInfo "-PbundleVersion=3.13.5"
# Build with debug output
gradle release "-PbundleVersion=3.13.5" --debugThis build system replaces the previous Ant-based build:
- ❌ Removed:
build.xml(Ant build file) - ❌ Removed: Ant task imports
- ❌ Removed: Ant dependencies
- ✅ Added: Pure Gradle implementation
- ✅ Added: Native Gradle tasks
- ✅ Added: Comprehensive documentation
- Faster builds with caching
- Better dependency management
- Modern build practices
- Improved maintainability
- Better IDE integration
- Same build output
- Same directory structure
- Same Python version support
- Same wheel package handling
- Java 8 or higher
- Gradle 7.0 or higher
- 7-Zip (for archive creation)
- Python (versions in bin/ directory)
- Windows (primary platform)
- 2GB RAM minimum (4GB recommended)
- 1GB free disk space
- Check Documentation: Start with the Getting Started Guide
- Run Verification: Use
gradle verifyto check your environment - View Task Help: Use
gradle tasksto see available tasks - Debug Output: Use
--debugor--stacktracefor detailed output
For issues, please report on the Bearsampp repository.
Include:
- Gradle version (
gradle --version) - Java version (
java -version) - Error message and stack trace
- Steps to reproduce
To improve this documentation:
- Edit the relevant
.mdfile - Follow the existing structure and style
- Test any code examples
- Submit a pull request
To contribute to the build system:
- Read the Build System Guide
- Test changes thoroughly
- Update documentation
- Submit a pull request
- Initial pure Gradle implementation
- Removed Ant dependencies
- Added comprehensive documentation
- Added verification tasks
- Added Python-specific build features
This documentation is part of the Bearsampp project.
See LICENSE for details.
- Bearsampp - Main project
- module-php - PHP module (similar build system)
Last Updated: 2025-08-21
Maintained By: Bearsampp Team
Questions? Check the Getting Started Guide or open an issue.