Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
fbbe7cb
Performance improvements: HTTP/2 flag support and connection pooling …
arman-bd Oct 26, 2025
08d6547
docs: Add basic ReadTheDocs documentation with Sphinx
arman-bd Oct 26, 2025
ec0b691
Fix Windows C++ compilation with explicit type casts
arman-bd Oct 26, 2025
6cb0fa9
Fix SSL_shutdown blocking on proxy/stale connections
arman-bd Oct 26, 2025
03c15d9
Add automatic retry for stale pooled connections on send
arman-bd Oct 26, 2025
b30a66c
Add timeouts to slow proxy tests to prevent CI hangs
arman-bd Oct 26, 2025
403a029
Fix Windows build compilation errors
Oct 26, 2025
7f1249b
Update generated Cython file for _http2 with new build settings
Oct 26, 2025
b8a6362
Merge branch 'performance-improvements-for-develop' of https://github…
Oct 26, 2025
17aaae8
Fix proxy CONNECT hanging and add real proxy integration tests
Oct 26, 2025
d75563c
Add async API structure and fix missing httpmorph_client_get_pool fun…
arman-bd Oct 27, 2025
6f18dea
feature: Refactor core architecture for performance and modularization
arman-bd Oct 29, 2025
75da045
chore: cleanup for async
arman-bd Oct 29, 2025
f467879
fix: resolve async HTTP failures and complete async architecture refa…
arman-bd Oct 30, 2025
931ae61
fix: Add Windows platform support with full POSIX compatibility layer
Oct 30, 2025
daceb3c
fix: resolve Docker build issues and enable full test suite in CI
arman-bd Oct 31, 2025
1937480
chore: linux benchmarks
arman-bd Oct 31, 2025
9455bee
feat: Complete Windows async IOCP implementation with event-driven di…
Oct 31, 2025
5dd43c8
Merge branch 'performance-improvements-for-develop' of https://github…
Oct 31, 2025
8496413
feat: Add Windows 0.1.3 benchmarks and improve proxy/TLS async handling
Nov 3, 2025
d2cca25
fix: fixes for async proxy issue on mac / linux.
arman-bd Nov 3, 2025
880345c
temp: skip proxy test
arman-bd Nov 3, 2025
d9391bc
feat: centralize version management and improve code quality
arman-bd Nov 4, 2025
409ba82
chore: documentation update
arman-bd Nov 4, 2025
3747086
bugfix: fix for python 3.8 toml
arman-bd Nov 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion .github/workflows/_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ on:
primary-python:
required: true
type: string
secrets:
TEST_PROXY_URL:
required: false
CODECOV_TOKEN:
required: false

jobs:
test:
Expand Down Expand Up @@ -223,7 +228,12 @@ jobs:
run: ruff check src/ tests/

- name: Run tests
run: pytest tests/ -v --cov=httpmorph --cov-report=xml
run: |
# Skip proxy tests in CI to avoid external dependencies
# To run proxy tests locally: pytest tests/ -m "proxy"
pytest tests/ -v --cov=httpmorph --cov-report=xml -m "not proxy"
env:
TEST_PROXY_URL: ${{ secrets.TEST_PROXY_URL }}

- name: Upload coverage
if: matrix.os == inputs.primary-os && matrix.python-version == inputs.primary-python
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ jobs:
python-matrix: ${{ needs.load-config.outputs.python-matrix }}
primary-os: ${{ needs.load-config.outputs.primary-os }}
primary-python: ${{ needs.load-config.outputs.primary-python }}
secrets:
TEST_PROXY_URL: ${{ secrets.TEST_PROXY_URL }}
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

# ============================================================
# Summary
Expand Down
9 changes: 2 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ dmypy.json

# Documentation
docs/_build/
docs/build/

# Virtual environments
venv/
Expand All @@ -62,13 +63,7 @@ uv.lock
# Vendor dependencies (downloaded by scripts/setup_vendors.sh)
vendor/

# Benchmarks
benchmarks/results/
*.prof

# Environment variables
.env
examples/.env

# Planning documents (internal)
plan/
.plan/
22 changes: 22 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the OS, Python version and other tools you might need
build:
os: ubuntu-24.04
tools:
python: "3.11"

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/source/conf.py

# Install Python dependencies required to build your docs
python:
install:
- requirements: docs/requirements.txt
- method: pip
path: .
Loading
Loading