| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[Refactor] Release shared-context realms explicitly - Count shared-context executors, detach NAPI before globals, and remove obsolete observers from every backend. AutoSubmit: True | 18 天前 | |
[Refactor] Release shared-context realms explicitly - Count shared-context executors, detach NAPI before globals, and remove obsolete observers from every backend. AutoSubmit: True | 18 天前 | |
[BugFix] Integrate exited-page residual memory across full GCs - Accumulate residual byte-time in VM-local page slots between confirmed full GCs, preserving historical contributions after residuals reach zero and avoiding instance scans during GC updates. - Sample pending integrals independently by area, drain each increment once, and flush the final held segment before QuickJS VM destruction removes its attribution metadata. - Advance the memory event schema to 11, split VM heap and exited-page residual guidance into Q7.1 and Q7.2, and update lifecycle tests, replay collection, independent oracles, and all four simulation fixtures. TEST: 136 performance unit tests passed; all four deterministic fixtures validated; C++ formatting and whitespace checks passed. | 4 天前 | |
[Refactor] Release shared-context realms explicitly - Count shared-context executors, detach NAPI before globals, and remove obsolete observers from every backend. AutoSubmit: True | 18 天前 | |
[Doc] Add AGENTS guides for runtime and renderer bridges - Add AGENTS guides for runtime bridge layers across JS, JSI, LepusNG, profiling, VDOM, Starlight, and TASM React. - Document how these bridging directories hand work between execution engines, renderer trees, and wrapper boundaries. - Verified by keeping this commit within the 300-line limit during the history rewrite. AutoSubmit:True | 6 个月前 | |
[BugFix][JS] Route V8 foreground tasks to the Lynx message loop - Bridge per-isolate V8 foreground task runners to the owning fml task runner while delegating worker and platform services to the default V8 platform. - Deactivate queued foreground work during isolate disposal to prevent tasks from accessing a released isolate. - Add an asynchronous WebAssembly.instantiate regression test that verifies the promise resolves through the Lynx message loop. AutoSubmit: True SkipChecks:macro | 1 个月前 | |
[Refactor][JS][Path] Move JSI under core/runtime/js and update includes and GN deps This change consolidates the JSI implementation under core/runtime/js/jsi and updates all include paths, GN build files, and tests accordingly. - Rename/move core/runtime/jsi/* to core/runtime/js/jsi/* - Update C++ includes from core/runtime/jsi/... to core/runtime/js/jsi/... - Adjust GN/CMake imports, deps, and paths for quickjs, jsc, v8, jsvm - Fix references across platforms (Android, iOS, Harmony, Windows) and devtools/tests - Update cspell ignore paths reflecting the new structure No functional behavior change; this is a structural refactor to make JS runtime paths consistent and clearer. AutoSubmit: True doc: https://github.com/lynx-family/lynx/discussions/281 issue: m-6787224557 | 9 个月前 | |
[Refactor][Runtime] Consolidate JS runtime utilities into js namespace Move JS-related runtime utilities from core/runtime/common into core/runtime/js and update all includes, namespaces, and call sites to use the new layout. Key updates: - Rename and relocate utils, args_converter, and jsi_object_wrapper into core/runtime/js, and drop Android-only helpers from the common layer. - Switch JSErrorReporter and console constants to the lynx::runtime namespace and fix all references (including devtool mappings). - Replace the removed utils_map JNI glue with generic byte-array helpers in Android JNIHelper for JavaOnlyArray/JavaOnlyMap interop. - Update BUILD.gn, JNI configs, and unit tests to reflect the new directory structure and header paths. AutoSubmit: True doc: https://github.com/lynx-family/lynx/discussions/281 issue: m-6787224557 | 8 个月前 | |
[Refactor][Runtime] Consolidate JS runtime utilities into js namespace Move JS-related runtime utilities from core/runtime/common into core/runtime/js and update all includes, namespaces, and call sites to use the new layout. Key updates: - Rename and relocate utils, args_converter, and jsi_object_wrapper into core/runtime/js, and drop Android-only helpers from the common layer. - Switch JSErrorReporter and console constants to the lynx::runtime namespace and fix all references (including devtool mappings). - Replace the removed utils_map JNI glue with generic byte-array helpers in Android JNIHelper for JavaOnlyArray/JavaOnlyMap interop. - Update BUILD.gn, JNI configs, and unit tests to reflect the new directory structure and header paths. AutoSubmit: True doc: https://github.com/lynx-family/lynx/discussions/281 issue: m-6787224557 | 8 个月前 | |
[Feature][Android] Support BTS heap snapshots to files - Add LynxView.takeBTSHeapSnapshot(File, LynxConsumer<Boolean>) as an any-thread API with an optional asynchronous result callback. - Schedule snapshot capture as a regular background scripting task and write the result on a dedicated low-priority I/O thread. - Release Android lifecycle protection after scheduling and invoke the supplied callback after the file write finishes. - Keep snapshot ownership and file output in the QuickJS runtime layer while Shell and Android JNI dispatch the request. - Use a small Java dispatch helper for the completion callback so native code avoids manual LynxConsumer.accept JNI plumbing. - Register the QuickJS heap snapshot implementation in the shared QuickJS source list so encoder and Oliver builds link it. - Use stdio for snapshot file writes to avoid pulling extra C++ file stream code into the Android library. TEST: tools/env.sh python3 tools_shared/git_lynx.py check --checkers coding-style TEST: tools/env.sh python3 tools_shared/git_lynx.py check --checkers commit-message --all TEST: tools/env.sh python3 tools_shared/git_lynx.py check --checkers android-check-style TEST: tools/env.sh python3 tools_shared/git_lynx.py check --checkers cpp-header-path TEST: tools/env.sh python3 tools_shared/git_lynx.py check --checkers file-type,spell TEST: tools/env.sh python3 tools_shared/git_lynx.py check --checkers macro,gn-relative-path-check TEST: tools/env.sh python3 tools_shared/git_lynx.py check --checkers api-check2 --all TEST: tools/env.sh python3 tools/lynx_tools/checkers/key_words_checker.py TEST: lynx/tools/rtf/rtf native-ut run --name lynx --target encoder_tests_exec --disable-flutter-cxx --args="enable_encode_ut=true" (build passed; run failed locally because codec input fixtures are missing in the local checkout) AutoSubmit: true | 2 个月前 | |
[Refactor][Runtime] Rename piper namespace to runtime::js across codebase Detailed description: Rename all piper namespace references to runtime::js throughout the project Batch modification of 584 files including headers, source files, and test files Update related include paths and namespace declarations Maintain original functionality with only naming standardization changes This refactoring primarily aims to unify code naming conventions by consolidating the original piper namespace under runtime::js, making the code structure clearer and more consistent. AutoSubmit: True doc: https://github.com/lynx-family/lynx/discussions/281 issue: m-6787224557 | 8 个月前 | |
[Refactor][Runtime] Rename piper namespace to runtime::js across codebase Detailed description: Rename all piper namespace references to runtime::js throughout the project Batch modification of 584 files including headers, source files, and test files Update related include paths and namespace declarations Maintain original functionality with only naming standardization changes This refactoring primarily aims to unify code naming conventions by consolidating the original piper namespace under runtime::js, making the code structure clearer and more consistent. AutoSubmit: True doc: https://github.com/lynx-family/lynx/discussions/281 issue: m-6787224557 | 8 个月前 | |
[Refactor][Runtime] Gate JS call timeout guard behind ENABLE_TRACE_PERFETTO The JS call timeout guard introduced for debugging long-running JS calls was compiled into every build even though it is only useful when DevTool is attached. Restrict the watchdog logic to builds with trace support so production binaries without ENABLE_TRACE_PERFETTO no longer carry it. - Compile the WatchDog JSCallTimeoutGuard implementation, Runtime factory body, JSRuntimeExternalParams plumbing, JSRuntimeDelegate timeout callback, and the BTS runtime timeout handler only with ENABLE_TRACE_PERFETTO, and add a LYNX_JS_CALL_TIMEOUT_GUARD macro for the JSC, QuickJS, V8, and JSVM call sites. - Keep the JSCallTimeoutGuard type and the CreateJSCallTimeoutGuardIfEnabled factory symbol defined in every build (the factory returns nullptr without ENABLE_TRACE_PERFETTO), because the devtool bridges are always compiled with ENABLE_TRACE_PERFETTO and link against liblynx, which may be built without it. - Remove the ENABLE_JS_CALL_TIMEOUT_GUARD and JS_CALL_TIMEOUT_MS env keys and LynxEnv::GetJSCallTimeoutConfig; when the guard is compiled in it is enabled solely by the Lynx debug state with a fixed 20s timeout. TEST: Compiled the affected runtime targets locally with enable_trace both "none" and "perfetto"; both configurations build and link successfully. SkipChecks:macro Co-authored-by: TRAE CLI <noreply@bytedance.com> | 1 个月前 | |
[Feature][iOS] Load templates and bytecode through resource handles Load handle-backed template fetch results through synchronous bundle creation. Centralize conversion and error handling, preserve View-scoped verification for View loads, and use bundle-scoped verification for preloading. Reject handles for lazy bundles. Normalize external resource results to shared immutable data and connect optional handle bytecode fetching to BTS consumers. Limit callback deduplication to the handle path and retain the existing byte fetcher fallback. Share native handle access through an internal header and synchronize ownership acquisition and invalidation. Change-Id: I6ba36510ec4fb81999b88c6c03982ca8202569d5 | 7 天前 | |
[Optimize][JSI] Switch PreparedJavaScript ownership to unique_ptr and pass by reference Update `Runtime::prepareJavaScript()` to return `std::unique_ptr<const PreparedJavaScript>` and change `evaluatePreparedJavaScript()` to take `const PreparedJavaScript&` to avoid shared ownership and null handling in the prepared-script path. Migrate all runtime implementations (JSC/JSVM/QuickJS/V8) and call sites (App, JSContextWrapper, BTSRuntime) to dereference the prepared script when evaluating, and adjust unit tests accordingly. AutoSubmit: True | 6 个月前 | |
[Optimize][JSRuntime] Switch runtime ownership to UnsafeOwningPtr and UnsafeWeakPtr across JS/NAPI paths Replace `std::shared_ptr`/`std::weak_ptr` usage for JS runtimes with `base::UnsafeOwningPtr` and `base::UnsafeWeakPtr` to make runtime ownership explicit and avoid accidental ref-count extension. Update NAPI runtime proxy creation to take `Runtime&` and store only a weak runtime handle, and adjust loader hooks to use `Lock()` instead of `lock()`. Refactor Global/App/JSExecutor/RuntimeManager to pass weak runtime handles through factories and callbacks, and migrate devtool and unit tests to the new pointer types and APIs. AutoSubmit: True issue: m-7282878213 | 5 个月前 | |
[Refactor][Runtime] Rename piper namespace to runtime::js across codebase Detailed description: Rename all piper namespace references to runtime::js throughout the project Batch modification of 584 files including headers, source files, and test files Update related include paths and namespace declarations Maintain original functionality with only naming standardization changes This refactoring primarily aims to unify code naming conventions by consolidating the original piper namespace under runtime::js, making the code structure clearer and more consistent. AutoSubmit: True doc: https://github.com/lynx-family/lynx/discussions/281 issue: m-6787224557 | 8 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 18 天前 | ||
| 18 天前 | ||
| 4 天前 | ||
| 18 天前 | ||
| 6 个月前 | ||
| 1 个月前 | ||
| 9 个月前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 2 个月前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 1 个月前 | ||
| 7 天前 | ||
| 6 个月前 | ||
| 5 个月前 | ||
| 8 个月前 |