Commit 598d439
authored
Release v0.2.4 (#28)
* [CHORE] support chrome 142 and fix windows build (#27)
* feat: Add Chrome 142 fingerprint support with certificate compression
- Enable certificate compression (Brotli, Zlib) for Cloudflare compatibility
- Implement perfect JA3N, JA4, and JA4_R fingerprint matching
- Add chrome/chrome142 browser profile aliases
- Include comprehensive Chrome 142 fingerprint tests
- Update README with Chrome 142 features and legal disclaimer
- Re-enable MLKEM768 post-quantum cryptography support
* chore: ignore Cython-generated .cpp files
* perf(windows): add parallel compilation and cache detection to vendor builds
* fix(windows): detect MSVC environment before using Ninja generator
Ninja generator requires MSVC compiler (cl) to be in PATH, but in CI
environments without Visual Studio Developer Command Prompt active,
cl is not available. This caused cmake configuration to fail.
Fix: Check for both ninja AND cl before using Ninja generator.
Falls back to Visual Studio generator which automatically sets up
MSVC environment.
This maintains parallel compilation benefits via --parallel flag
while ensuring builds work in all CI environments.
* feat: add OS-specific user agent support (macOS, Windows, Linux)
Add support for OS-specific user agents across all browser profiles.
Users can now specify the operating system to simulate different platforms.
Changes:
- Add os_type_t enum (OS_MACOS, OS_WINDOWS, OS_LINUX) in browser_profiles.h
- Add user_agent_windows and user_agent_linux fields to browser_profile_t
- Add browser_profile_get_user_agent() helper function
- Update PROFILE_CHROME_142 with OS-specific user agents:
* macOS: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) ...
* Windows: Mozilla/5.0 (Windows NT 10.0; Win64; x64) ...
* Linux: Mozilla/5.0 (X11; Linux x86_64) ...
- Add 'os' parameter to Session class (default: 'macos')
- Update Python client to pass OS parameter through to C extension
Usage:
session = httpmorph.Session(browser='chrome', os='windows')
session = httpmorph.Session(browser='chrome', os='linux')
session = httpmorph.Session(browser='chrome') # defaults to macOS
Supported OS values: 'macos' (default), 'windows', 'linux'
* test: add OS-specific user agent tests for macOS, Windows, and Linux
Add 3 test cases to verify OS-specific user agents using httpbin /user-agent:
- test_os_macos_user_agent: Verifies macOS user agent string
- test_os_windows_user_agent: Verifies Windows user agent string
- test_os_linux_user_agent: Verifies Linux user agent string
Each test:
- Creates session with specific OS parameter
- Makes request to httpbin /user-agent endpoint
- Validates correct OS-specific user agent is sent
All tests pass successfully.
* docs: Add OS-specific user agents and clean up documentation
- Add os parameter to Session (macos, windows, linux)
- Update README.md and readthedocs with OS feature
- Remove obsolete browser profiles (firefox, safari, edge)
- Add accurate Chrome 142 fingerprint documentation
- Update API reference with correct parameters
* feat: benchmark on windows
* feat: benchmark on mac1 parent 1511ebf commit 598d439
File tree
48 files changed
+9429
-8882
lines changed- benchmarks/results
- darwin/0.2.4
- graphics
- windows/0.2.4
- graphics
- docs/source
- examples
- scripts/windows
- src
- bindings
- core
- internal
- httpmorph
- tls
- tests
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
48 files changed
+9429
-8882
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| 18 | + | |
18 | 19 | | |
19 | | - | |
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
15 | | - | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
16 | 17 | | |
17 | 18 | | |
18 | 19 | | |
| |||
60 | 61 | | |
61 | 62 | | |
62 | 63 | | |
63 | | - | |
| 64 | + | |
64 | 65 | | |
65 | 66 | | |
66 | | - | |
67 | | - | |
| 67 | + | |
| 68 | + | |
68 | 69 | | |
69 | 70 | | |
70 | | - | |
| 71 | + | |
71 | 72 | | |
72 | 73 | | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
73 | 131 | | |
74 | 132 | | |
75 | 133 | | |
| |||
343 | 401 | | |
344 | 402 | | |
345 | 403 | | |
346 | | - | |
| 404 | + | |
347 | 405 | | |
348 | 406 | | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
349 | 410 | | |
350 | 411 | | |
351 | 412 | | |
| |||
362 | 423 | | |
363 | 424 | | |
364 | 425 | | |
365 | | - | |
| 426 | + | |
366 | 427 | | |
367 | 428 | | |
368 | | - | |
| 429 | + | |
| 430 | + | |
369 | 431 | | |
370 | 432 | | |
371 | 433 | | |
372 | 434 | | |
373 | 435 | | |
374 | 436 | | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
375 | 440 | | |
376 | 441 | | |
377 | 442 | | |
378 | 443 | | |
379 | 444 | | |
380 | 445 | | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
381 | 449 | | |
382 | 450 | | |
383 | 451 | | |
| |||
387 | 455 | | |
388 | 456 | | |
389 | 457 | | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
390 | 482 | | |
391 | 483 | | |
392 | | - | |
| 484 | + | |
0 commit comments