100 Commits

Author SHA1 Message Date
7b81186bb3 feat(performance): Add async utility functions and filesystem utilities
- Implemented async utilities including delay, retryWithBackoff, withTimeout, parallelLimit, debounceAsync, AsyncMutex, and CircuitBreaker.
- Created tests for async utilities to ensure functionality and reliability.
- Developed AsyncFileSystem class with methods for file and directory operations, including ensureDir, readFile, writeFile, remove, and more.
- Added tests for filesystem utilities to validate file operations and error handling.
2025-05-31 17:45:40 +00:00
32583f784f fix(smartproxy): Fix route security configuration location and improve ACME timing tests and socket mock implementations 2025-05-29 14:34:00 +00:00
e6b3ae395c update 2025-05-29 14:06:47 +00:00
af13d3af10 update 2025-05-29 13:24:27 +00:00
30ff3b7d8a update 2025-05-29 12:54:31 +00:00
ab1ea95070 update 2025-05-29 12:15:53 +00:00
b0beeae19e update 2025-05-29 11:30:42 +00:00
fdb45cbb91 fix(test): Fix ACME challenge route creation and HTTP request parsing in tests 2025-05-29 10:23:19 +00:00
6a08bbc558 update 2025-05-29 10:13:41 +00:00
d8d1bdcd41 update 2025-05-29 01:00:20 +00:00
e4aade4a9a fix(socket-handler): Fix socket handler race condition by differentiating between async and sync handlers. Now, async socket handlers complete their setup before initial data is emitted, ensuring that no data is lost. Documentation and tests have been updated to reflect this change. 2025-05-29 00:24:57 +00:00
742adc2bd9 fix(smartproxy): Improve port binding intelligence and ACME challenge route management; update route configuration tests and dependency versions. 2025-05-28 19:58:28 +00:00
a9ac57617e fix(smartproxy): Bump @push.rocks/smartlog to ^3.1.3 and improve ACME port binding behavior in SmartProxy 2025-05-20 19:20:24 +00:00
4f3359b348 update 2025-05-20 15:44:48 +00:00
669cc2809c fix(port-manager, certificate-manager): Improve port binding and ACME challenge route integration in SmartProxy 2025-05-20 15:32:19 +00:00
018a49dbc2 fix(tests): Update test mocks to include provisionAllCertificates methods in certificate manager stubs and related objects. 2025-05-19 23:57:16 +00:00
91018173b0 fix(certificate-manager, smart-proxy): Fix race condition in ACME certificate provisioning and refactor certificate manager initialization to defer provisioning until after port listeners are active 2025-05-19 22:07:08 +00:00
42fe1e5d15 fix(route-connection-handler): Forward non-TLS connections on HttpProxy ports to fix ACME HTTP-01 challenge handling 2025-05-19 19:59:22 +00:00
da061292ae fix(certificate-manager): Preserve certificate manager update callback in updateRoutes 2025-05-19 19:17:48 +00:00
3bf4e97e71 fix(smartproxy): Improve error handling in forwarding connection handler and refine domain matching logic 2025-05-19 18:29:56 +00:00
1b4d215cd4 fix(tests): test 2025-05-19 17:59:12 +00:00
33732c2361 fix(smartproxy): Correct NFTables forwarding handling to avoid premature connection termination and add comprehensive tests 2025-05-19 17:56:48 +00:00
465148d553 fix(strcuture): refactor responsibilities 2025-05-19 17:28:05 +00:00
6d3e72c948 fix(SmartCertManager): Preserve certificate manager update callback during route updates 2025-05-19 13:23:16 +00:00
4134d2842c fix(certificates): Update static-route certificate metadata for ACME challenges 2025-05-19 12:17:21 +00:00
02e77655ad update 2025-05-19 12:04:26 +00:00
ec81678651 feat(smartproxy): Update dependencies and enhance ACME certificate provisioning with wildcard support 2025-05-19 10:11:29 +00:00
0faca5e256 fix(tests): Adjust test cases for ACME challenge route handling, mutex locking in route updates, and port management. Remove obsolete challenge-route lifecycle tests and update expected outcomes in port80 management and race condition tests. 2025-05-19 03:42:47 +00:00
3fcdce611c fix(acme): Fix port 80 ACME management and challenge route concurrency issues by deduplicating port listeners, preserving challenge route state across certificate manager recreations, and adding mutex locks to route updates. 2025-05-19 03:40:58 +00:00
094edfafd1 fix(acme): Refactor ACME challenge route lifecycle to prevent port 80 EADDRINUSE errors 2025-05-19 01:59:52 +00:00
8fd861c9a3 fix(certificate-management): Fix loss of route update callback during dynamic route updates in certificate manager 2025-05-18 23:07:31 +00:00
68738137a0 feat(acme): Improve certificate management by adding global ACME configuration support and allowing route-level overrides. Enhanced error messages help identify missing ACME email and misconfigurations (e.g. wildcard domains). Documentation has been updated and new tests added to verify SmartCertManager behavior, ensuring a clearer migration path from legacy implementations. 2025-05-18 18:29:59 +00:00
41f7d09c52 feat(RouteManager): Add getAllRoutes API to RouteManager and update test environment to improve timeouts, logging, and cleanup; remove deprecated test files and adjust devDependencies accordingly 2025-05-18 18:08:55 +00:00
e224f34a81 feat(smartproxy/certificate): Integrate HTTP-01 challenge handler into ACME certificate provisioning workflow 2025-05-18 15:56:52 +00:00
538d22f81b update 2025-05-18 15:51:09 +00:00
01b4a79e1a fix(certificates): simplify approach 2025-05-18 15:38:07 +00:00
1a038f001f fix(network-proxy/websocket): Improve WebSocket connection closure and update router integration 2025-05-15 20:08:18 +00:00
5d0b68da61 feat(nftables): Add NFTables integration for kernel-level forwarding and update documentation, tests, and helper functions 2025-05-15 19:39:09 +00:00
a2e3e38025 feat(nftables):add nftables support for nftables 2025-05-15 14:35:01 +00:00
35d7dfcedf BREAKING CHANGE(IRouteSecurity): Consolidate duplicated IRouteSecurity interfaces by unifying property names 2025-05-15 09:34:01 +00:00
bb54ea8192 fix(network-proxy, route-utils, route-manager): Normalize IPv6-mapped IPv4 addresses in IP matching functions and remove deprecated legacy configuration methods in NetworkProxy. Update route-utils and route-manager to compare both canonical and IPv6-mapped IP forms, adjust tests accordingly, and clean up legacy exports. 2025-05-14 12:26:43 +00:00
0fe0692e43 fix tests 2025-05-13 21:28:02 +00:00
fcc8cf9caa fix(routing): unify route based architecture 2025-05-13 12:48:41 +00:00
38bacd0e91 fix(test/certificate-provisioning): Update certificate provisioning tests with updated port mapping and ACME options; use accountEmail instead of contactEmail, adjust auto-api route creation to use HTTPS terminate helper, and refine expectations for wildcard passthrough domains. 2025-05-10 18:58:28 +00:00
f85698c06a update 2025-05-10 15:09:58 +00:00
ffc8b22533 update 2025-05-10 13:59:34 +00:00
a2eb0741e9 BREAKING CHANGE(smartproxy/configuration): Migrate SmartProxy to a fully unified route‐based configuration by removing legacy domain-based settings and conversion code. CertProvisioner, NetworkProxyBridge, and RouteManager now use IRouteConfig exclusively, and related legacy interfaces and files have been removed. 2025-05-10 07:56:21 +00:00
b4a0e4be6b feat(smartproxy): Update documentation and route helper functions; add createPortRange, createSecurityConfig, createStaticFileRoute, and createTestRoute helpers to the readme and tests. Refactor test examples to use the new helper API and remove legacy connection handling files (including the old connection handler and PortRangeManager) to fully embrace the unified route‐based configuration. 2025-05-10 07:34:35 +00:00
bb66b98f1d BREAKING CHANGE(documentation): Update readme documentation to comprehensively describe the new unified route-based configuration system in v14.0.0 2025-05-10 00:06:53 +00:00
28022ebe87 change to route based approach 2025-05-10 00:01:02 +00:00