Commit Graph

180 Commits

Author SHA1 Message Date
a022383d63 Improve error handling for FetchBlobConfig
Replaces fire-and-forget async call to FetchBlobConfig with a safe pattern that logs errors if the task fails. This ensures exceptions are not silently ignored and improves reliability.
2025-08-17 22:34:31 +09:00
d0c031fe32 Fix async context handling in blob config loading
Added ConfigureAwait(false) to async HTTP call and moved Compile() invocation to immediately after deserialization. This improves async context handling and ensures blob config is compiled before assignment.
2025-08-17 21:22:17 +09:00
6896c272ef
Update WelsonJS.Toolkit/WelsonJS.Launcher/TraceLogger.cs
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-17 20:58:08 +09:00
f44f56ea2c Refactor HTTP client usage in ResourceServer
Replaced local HttpClient instantiation with the class-level _httpClient for sending requests. This improves resource management and consistency in HTTP operations.
2025-08-17 20:43:33 +09:00
cc08c46886 Improve logging and async handling in ResourceServer
ResourceServer now defaults to using TraceLogger if no logger is provided and properly awaits FetchBlobConfig. FetchBlobConfig is refactored to return a Task and handle missing configuration more gracefully. TraceLogger now writes logs to a file named after its namespace and sets up a TextWriterTraceListener for persistent logging.
2025-08-17 20:12:38 +09:00
8ecdf99d78 Add ICompatibleLogger interface and integrate logging
Introduced ICompatibleLogger interface and TraceLogger implementation to enable flexible logging. ResourceServer now uses ICompatibleLogger for error reporting instead of Trace, improving testability and future extensibility. Updated project file to include new logger classes.
2025-08-16 21:23:16 +09:00
2068cdfeb3 Refactor WebSocket communication logic
Replaces manual WebSocket send/receive code with a single call to _wsManager.SendAndReceiveAsync for improved clarity and maintainability. Updates comments for better readability and removes redundant exception handling for OperationCanceledException.
2025-08-14 04:43:13 +09:00
6893eadd04 Improve WebSocket receive buffer handling
Refactored TrySendAndReceiveAsync to use a fixed-size buffer for I/O and dynamically accumulate received data chunks until EndOfMessage. This prevents truncation of large messages and ensures the entire payload is received before decoding.
2025-08-14 04:21:02 +09:00
e1d90cde18 Improve WebSocket receive to handle multi-frame messages
The receive logic now accumulates all frames until EndOfMessage, ensuring complete messages are read even if fragmented. This change improves reliability when handling large or fragmented WebSocket messages.
2025-08-14 04:01:02 +09:00
ae7f79aeb8 Update WebSocketManager.cs 2025-08-05 05:01:54 +09:00
57fae72f42 Refactor WebSocketManager for improved clarity and reliability
Renamed internal classes and fields for clarity, added comments, and refactored SendAndReceiveAsync to use a helper method and a retry mechanism. Improved resource cleanup and error handling for stale sockets. These changes enhance code readability and robustness in WebSocket connection management.
2025-08-05 04:33:18 +09:00
b33069fc9e Update WebSocketManager.cs 2025-08-05 04:26:30 +09:00
f9c265b08a Use MD5 hash for WebSocket connection keys
Replaces the plain concatenation of host, port, and path with an MD5 hash to generate unique keys for WebSocket connections. This improves key uniqueness and prevents potential issues with special characters in the key string.
2025-07-31 17:28:26 +09:00
92a35606ed Improve XML escaping, WebSocket buffer, and editor style
Replaced HTML encoding with SecurityElement.Escape for XML escaping in ChromiumDevTools. Made WebSocketManager's receive buffer size configurable with a default of 65536 bytes. Updated editor.html to use 'color: inherit' for banner link hover to maintain contrast.
2025-07-31 17:23:11 +09:00
837ab036a8 Enhance banner link style and text in editor.html
Added custom CSS for the banner link to improve appearance and hover effect. Updated the banner link text to include a heart emoji for better visual appeal.
2025-07-31 17:13:45 +09:00
14da9f90da Update editor.html 2025-07-31 17:08:29 +09:00
ed0a7eed3f Update banner link text in editor.html
Changed the banner text from 'WelsonJS Editor powered by Metro UI, Monaco Editor, and JSONEditor.' to 'Contribute this project' with a link to the project's GitHub repository.
2025-07-31 17:05:44 +09:00
7b49817182 Add WebSocket support for Chromium DevTools endpoints
Implemented WebSocket communication in ChromiumDevTools to support 'page/' endpoints, allowing bidirectional messaging with Chromium DevTools Protocol. Added timeout configuration, improved error handling, and refactored WebSocketManager for connection pooling and reconnection. Updated resources and configuration files to support new timeout settings. Also fixed editor.html to handle direct JSON responses for citi-query.
2025-07-31 16:59:03 +09:00
e579a341a4 Add WebSocketManager.cs and more
Add WebSocketManager.cs and more
2025-07-27 22:25:48 +09:00
9a328bff0b
Merge pull request #300 from gnh1201/cryptography
Some checks are pending
CodeQL / Analyze (javascript) (push) Waiting to run
Deploy Jekyll with GitHub Pages dependencies preinstalled / build (push) Waiting to run
Deploy Jekyll with GitHub Pages dependencies preinstalled / deploy (push) Blocked by required conditions
Add resource server autostart and Chromium config options
2025-07-27 16:17:10 +09:00
c3d68e1d2f Fix typo
Fix typo
2025-07-27 16:12:55 +09:00
2b4814ecb5 Add resource server autostart and Chromium config options
Introduces ResourceServerAutoStart and ChromiumFileName/ChromiumDevToolsPrefix settings to app.config and resources. Refactors resource server startup logic to support autostart and configurable browser launch. Cleans up related code in MainForm and Program for improved flexibility and maintainability.
2025-07-27 15:57:05 +09:00
2688765f84 Update the contacts 2025-07-16 13:57:04 +09:00
82df8c5605 Update EsentDatabase specs 2025-06-26 10:22:07 +09:00
91ce125c7f Update MainForm.cs 2025-06-25 15:38:26 +09:00
aacc2414f2 ESENT completed #277 2025-06-25 00:19:56 +09:00
9d2fb432f7 Add the package ManagedEsent, and WelsonJS.Esent
Add the package ManagedEsent (microsoft/ManagedEsent@d358c07), and WelsonJS.Esent
2025-06-24 17:55:34 +09:00
62d219f443 ESENT: Add method CreateIndex
The index creation process has been separated into a dedicated method to improve readability and stability.
2025-06-24 11:30:27 +09:00
3e4b6a73b5 Fix the index creation failure 2025-06-23 18:15:37 +09:00
ece369f8f0 Revert "Update MetadataStore.cs"
This reverts commit ba3e21feca.
2025-06-23 18:04:39 +09:00
ba3e21feca Update MetadataStore.cs 2025-06-23 17:40:02 +09:00
0cb0f9303d ESENT: fix the index creation failure #277 2025-06-23 17:36:03 +09:00
dfef7a622f ESENT: try 2 2025-06-22 22:27:42 +09:00
7aa70a2eeb Try to apply ESENT database #277 2025-06-21 18:33:38 +09:00
260292a873 Fix typo of the license and contributing files 2025-05-26 00:10:26 +09:00
a0e29aa491 Add SPDX headers and references to all source files 2025-05-25 15:52:46 +09:00
ec2681b43e Add SPDX and references to all source files 2025-05-25 15:47:19 +09:00
e4e96d566d Add SPDX headers to all source files 2025-05-25 14:56:37 +09:00
bd66105504 Add LICENSE to each project 2025-05-25 13:56:44 +09:00
2b9a406805 Update Completion.cs 2025-05-24 16:23:01 +09:00
cb6e25eaa9 Make traceable tasks 2025-05-24 16:18:43 +09:00
c9b6c6a117 Add the SearchMaxResults const 2025-05-24 16:09:33 +09:00
9b64204771 Fix thread-safety issue with concurrent list access. 2025-05-24 15:51:37 +09:00
d9f9d3e38b Fix issue with file executable path auto-completion 2025-05-24 15:33:07 +09:00
7e29cc649f Fix mistypo 2025-05-24 12:53:38 +09:00
bee2be97a9 Add the link text 2025-05-24 12:49:37 +09:00
f1a6ef4435 Fix UI management flow issue. 2025-05-24 12:39:58 +09:00
d214a8d749 Fix issues and PR #254 #260 2025-05-24 12:16:11 +09:00
Theodore Tsirpanis
e74b7b8b73 Remove dependency to System.IO.Compression.ZipFile package. 2025-05-22 03:00:34 +03:00
Theodore Tsirpanis
4d9427f514 Revert "Merge pull request #255 from gnh1201/dev"
This reverts commit 4d37a3eb4a, reversing
changes made to fc31b528da.
2025-05-22 02:54:55 +03:00