# Changelog ## 2025-02-21 - 3.4.3 - fix(PortProxy) Fixed indentation issue and ensured proper cleanup of sockets in PortProxy - Fixed inconsistent indentation in IP allowance check. - Ensured proper cleanup of sockets on connection end in PortProxy. ## 2025-02-21 - 3.4.2 - fix(smartproxy) Enhance SSL/TLS handling with SNI and error logging - Improved handling for SNI-enabled and non-SNI connections - Added detailed logging for connection establishment and rejections - Introduced error logging for TLS client errors and server errors ## 2025-02-21 - 3.4.1 - fix(PortProxy) Normalize IP addresses for port proxy to handle IPv4-mapped IPv6 addresses. - Improved IP normalization logic in PortProxy to support IPv4-mapped IPv6 addresses. - Updated isAllowed function to expand patterns for better matching accuracy. ## 2025-02-21 - 3.4.0 - feat(PortProxy) Enhanced PortProxy with custom target host and improved testing - PortProxy constructor now accepts 'fromPort', 'toPort', and optional 'toHost' directly from settings - Refactored test cases to cover forwarding to the custom host - Added support to handle multiple concurrent connections - Refactored internal connection handling logic to utilize default configurations ## 2025-02-21 - 3.3.1 - fix(PortProxy) fixed import usage of net and tls libraries for PortProxy - Corrected the use of plugins for importing 'tls' and 'net' libraries in the PortProxy module. - Updated the constructor of PortProxy to accept combined tls options with ProxySettings. ## 2025-02-21 - 3.3.0 - feat(PortProxy) Enhanced PortProxy with domain and IP filtering, SNI support, and minimatch integration - Added new ProxySettings interface to configure domain patterns, SNI, and default allowed IPs. - Integrated minimatch to filter allowed IPs and domains. - Enabled SNI support for PortProxy connections. - Updated port proxy test to accommodate new settings. ## 2025-02-04 - 3.2.0 - feat(testing) Added a comprehensive test suite for the PortProxy class - Set up a test environment for PortProxy using net.Server. - Test coverage includes starting and stopping the proxy, handling TCP connections, concurrent connections, and timeouts. - Ensures proper resource cleanup after tests. ## 2025-02-04 - 3.1.4 - fix(core) No uncommitted changes. Preparing for potential minor improvements or bug fixes. ## 2025-02-04 - 3.1.3 - fix(networkproxy) Refactor and improve WebSocket handling and request processing - Improved error handling in WebSocket connection and request processing. - Refactored the WebSocket handling in NetworkProxy to use a unified error logging mechanism. ## 2025-02-04 - 3.1.2 - fix(core) Refactor certificate handling across the project - Moved certificate keys and certs to the assets/certs directory. - Updated test utilities to load certificates from the central location. - Cleaned up redundant code and improved error logging regarding certificates. - Ensured correct handling of host header in ProxyRouter class. ## 2025-02-03 - 3.1.1 - fix(workflow) Update Gitea workflow paths and dependencies - Updated registry paths for npmci image and repositories in Gitea workflow files. - Fixed dependency paths in package.json. - Completed adding typescript to the list of devDependencies. ## 2024-10-07 - 3.1.0 - feat(NetworkProxy) Introduce WebSocket heartbeat to maintain active connections in NetworkProxy - Added heartbeat mechanism to WebSocket connections to ensure they remain active. - Terminating WebSocket if no pong is received for 5 minutes. - Set up heartbeat interval to run every 1 minute for connection checks. ## 2024-10-07 - 3.0.61 - fix(networkproxy) Improve error handling for proxy requests - Wrapped proxy request logic in a try-catch block to handle errors gracefully. - Improved error handling for WebSocket communication by checking errors before attempting to send messages. - Added logging for error cases to aid in debugging. ## 2024-05-29 - 3.0.60 - various updates Maintenance updates and adjustments. - Updated project description - Updated tsconfig settings - Updated npmextra.json with new githost info ## 2023-07-27 - 3.0.58 to 3.0.59 - core improvements Improvements and internal restructuring. - Switch to a new organizational scheme - Core updates and adjustments ## 2022-07-29 - 2.0.16 to 3.0.0 - major transition This release marks a major transition with several breaking changes. - BREAKING CHANGE: switched core to ESM (EcmaScript Module) - Major core updates