Commit graph

8 commits

Author SHA1 Message Date
NBA2K1
8b1f7fc581 Add service disposal and lifecycle cleanup
This commit improves memory management, reduces redundant interpreter
instantiation, and standardizes service usage patterns.

- Add `dispose()` to `ExtensionService` interface and implement it across
  Dart, JS, LNReader, and Mihon services.
- Replace repeated interpreter creation in `DartExtensionService` with a
  persistent `_interpreter` instance initialized once in the constructor.
- Add disposal logic for JS DOM selector and Cheerio instances to prevent
  memory leaks.
- Introduce `withExtensionService()` helper to ensure services are always
  disposed after use.
- Update call sites across the codebase to use `withExtensionService()`
  or manual try/finally disposal.
- Improve isolate service message handling by extracting `responsePort`
  earlier.
- Ensure safer defaults (e.g., returning empty lists, const lists) when
  service calls fail.
2026-01-13 01:11:19 +01:00
Moustapha Kodjo Amadou
430e81e021 Refactor and update dependencies for Isar and Riverpod 2025-10-29 13:08:42 +01:00
Schnitzel5
9395888c6a added support for Mihon extensions via ApkBridge 2025-08-20 21:06:26 +02:00
Yegor Shovkun
f0cf52813a refactor: refactor extension services 2024-12-14 13:55:40 +02:00
kodjomoustapha
ee1529be24 update 2024-11-20 17:59:12 +01:00
kodjomoustapha
cbd01a3c17 refactor code 2024-05-23 11:19:23 +01:00
kodjomoustapha
6fa0e8a89f Added JavaScript extension runtime, gridview count 2024-03-12 17:24:41 +01:00
kodjomoustapha
a086e918b6 Update 2024-02-08 20:39:35 +01:00