Skip to content

Releases: bluet/proxybroker2

ProxyBroker2 v2.0.0b1 - Production Ready Beta 🚀

26 May 01:15
3bd8247

Choose a tag to compare

🎉 Major Milestone: ProxyBroker2 is Production-Ready!

This beta release represents a complete modernization and stabilization of ProxyBroker, making it ready for production use with zero critical bugs and comprehensive test coverage.

✨ Key Highlights

🔧 Critical Bug Fixes

  • Fixed ProxyPool heap corruption - Proper min-heap maintenance with avg_resp_time priority
  • Added timeout/retry limits - Prevents infinite loops in proxy import operations
  • Deterministic protocol selection - Clear priority order (SOCKS5 → SOCKS4 → CONNECT → HTTPS → HTTP)
  • Signal handler cleanup - Proper memory management prevents leaks
  • Modern SSL handling - Uses asyncio.start_tls() instead of deprecated patterns
  • Exception chaining - Proper error propagation with raise ... from err

🚀 Production-Ready Status

  • Zero critical bugs - All signal handler leaks, deadlocks, and heap corruption fixed
  • 100% test suite pass rate - All 131 tests passing with comprehensive coverage
  • Python 3.10-3.13 support - Full compatibility with latest Python versions
  • Modern async patterns - Updated from deprecated asyncio patterns

🛠️ API Improvements

  • Proxy.types setter - Direct assignment and update operations with type validation
  • Cache invalidation - Schemes properly refresh when types change
  • Async context managers - Server lifecycle management
  • Resource cleanup - Comprehensive connection and SSL cleanup

🧪 Modern Testing Philosophy

  • Behavior-focused tests - Contract-based testing protects APIs during refactoring
  • 131 passing tests - Comprehensive coverage across all components
  • Mock infrastructure - Realistic testing without external dependencies
  • Integration tests - End-to-end workflow validation

🔄 Updated Dependencies (May 2025)

  • aiohttp 3.10.11 → 3.12.0 (asyncio deprecation fixes)
  • aiodns 3.1.1 → 3.4.0 (DNS resolution improvements)
  • attrs 22.1.0 → 25.3.0 (Python 3.10+ optimizations)
  • pytest 7.1.2 → 8.3.5 (modern testing framework)

📚 Enhanced Documentation

  • Updated architecture guide with clear component explanations
  • Modern toolchain documentation (ruff, pytest, poetry)
  • Migration guide for smooth transition from v1.x
  • Auto-generated API reference from high-quality docstrings

🎯 Perfect for Production Use

Web Scraping & Automation

import asyncio
from proxybroker import Broker

async def main():
    proxies = asyncio.Queue()
    broker = Broker(proxies)
    await broker.find(types=['HTTP', 'HTTPS'], limit=10)

asyncio.run(main())

Proxy Server Deployment

import asyncio
from proxybroker import Broker

async def main():
    proxies = asyncio.Queue()  
    broker = Broker(proxies)
    await broker.serve(host='127.0.0.1', port=8888, types=['HTTP', 'HTTPS'])

asyncio.run(main())

🔄 Migration from v1.x

ProxyBroker2 maintains API compatibility while adding modern features:

  • All existing code continues to work
  • New type validation provides better error messages
  • Enhanced async patterns improve performance
  • Modern Python 3.10+ support

📦 Installation

# Install from GitHub (recommended)
pip install git+https://github.com/bluet/proxybroker2.git

# Or with Poetry
poetry add git+https://github.com/bluet/proxybroker2.git

🤝 Contributing

ProxyBroker2 is ready for community contributions! See CONTRIBUTING.md for guidelines.


Ready to use ProxyBroker2 in production? This beta release provides a stable, thoroughly tested foundation for your proxy needs.

🤖 Generated with Claude Code

v2.0.0-alpha4

30 Aug 15:24
145c5fe

Choose a tag to compare

v2.0.0-alpha4 Pre-release
Pre-release

What's Changed

  • run script in venv through Poetry by @hms5232 in #92
  • Add coverage test by @afunTW in #96
  • Remove deprecation warnings/Add support for python 3.10 by @ziloka in #94
  • use setup-python built-in cache functionality by @hms5232 in #97
  • instructions to compile proxybroker to shared executable for Major platforms (Windows, Linux, and MacOS) by @ziloka in #95
  • fix README.md by @bluet in #100

New Contributors

Full Changelog: v2.0.0-alpha3...v2.0.0-alpha4

v2.0.0-alpha3

22 Aug 03:16
a7763f7

Choose a tag to compare

v2.0.0-alpha3 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v2.0.0-alpha...v2.0.0-alpha3

v2.0.0-alpha

20 Aug 17:42
473b4dd

Choose a tag to compare

v2.0.0-alpha Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: https://github.com/bluet/proxybroker2/commits/v2.0.0-alpha