Skip to content

Commit 957e035

Browse files
committed
refactor(runtime): remove legacy embedded libraries
1 parent 332c126 commit 957e035

569 files changed

Lines changed: 313 additions & 50607 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.md

Lines changed: 29 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ Historical stable notes remain archived in `changelogs/1.3.md` and
2626
switch <package>` before replacing a standalone, restart after ownership
2727
changes and validate with doctor/probe commands.
2828
- Plugin developers should use `depend` only when a library is required at boot,
29-
use `softdepend` for optional integrations and avoid treating legacy embedded
30-
EasyLibrary classes as permanent APIs.
29+
use `softdepend` for optional integrations and avoid treating removed
30+
EasyLibrary embedded classes as public APIs.
3131
- No intentional public API break has been introduced so far for the official
3232
library namespaces. The current 3.0-dev changes are infrastructure, packaging,
3333
diagnostics, config source and runtime ownership changes.
@@ -55,18 +55,19 @@ elprobe run <package>
5555
manager architecture.
5656
- Kept `EasyLibrary 2.0.0` as the last stable release where the core PHAR
5757
intentionally shipped the full embedded library family.
58-
- Kept legacy embedded classes temporarily during 3.0-dev so existing servers
59-
do not break before packages, fallback commands and migration docs are ready.
58+
- Removed legacy embedded official library source from the EasyLibrary 3.x core.
59+
Official libs are now provided by package-backed or standalone distributions.
6060
- Defined the 3.x target model: EasyLibrary core plus official installable
6161
packages under `plugin_data/EasyLibrary/packages/`.
62-
- Added `legacy-embedded.enabled=false` as the package-first default gate for
63-
old bundled runtime fallbacks. EasyLibrary no longer auto-starts embedded
64-
LibCommand, LibPlaceholder, LibTrigger, LibWorld or LibHud fallback pieces
65-
unless the operator explicitly enables that legacy escape hatch.
66-
- Changed command backend selection so embedded LibCommand classes on disk do
67-
not automatically unlock the rich command tree. Package-backed or standalone
68-
LibCommand still provides the rich backend; otherwise EasyLibrary uses the
62+
- Removed the old embedded LibCommand, LibPlaceholder, LibTrigger, LibWorld,
63+
LibHud, LibPacket, LibForm, LibDB, LibSerializer, LibWindow, LibCustom,
64+
LibEnchantment and Agent Bridge source copies from `src/imperazim`.
65+
- Changed command backend selection so only package-backed or standalone
66+
LibCommand unlocks the rich command tree. Otherwise EasyLibrary uses the
6967
native recovery command.
68+
- Removed embedded runtime control as a functional feature. `/easylibrary
69+
runtime` remains only as a compatibility boundary and points operators toward
70+
`/easylibrary packages`.
7071

7172
### Package manager
7273

@@ -216,24 +217,17 @@ elprobe run <package>
216217
diagnostics during the migration.
217218
- Added `/easylibrary doctor` as the top-level official library/runtime
218219
diagnostic summary.
219-
- Added provider states for standalone, package-backed, embedded runtime,
220-
embedded classpath, disabled and missing libraries.
220+
- Added provider states for standalone, package-backed, historical embedded,
221+
disabled and missing libraries.
221222

222223
### Runtime control absorbed into 3.0-dev
223224

224225
- Absorbed the old internal `2.2.0-dev` runtime-control and standalone
225226
installer work into the 3.0-dev changelog.
226-
- Added guarded embedded runtime control for EasyLibrary-owned legacy runtime
227-
targets.
228-
- Added:
229-
- `/easylibrary runtime status [runtime]`;
230-
- `/easylibrary runtime targets`;
231-
- `/easylibrary runtime enable <runtime>`;
232-
- `/easylibrary runtime disable <runtime> [confirm]`;
233-
- `/easylibrary runtime reload <runtime> [confirm]`.
234-
- Kept runtime control limited to EasyLibrary-owned embedded runtimes.
235-
- Standalone plugins managed by PMMP are not stopped or hot-reloaded by
236-
EasyLibrary runtime commands.
227+
- The guarded embedded runtime control commands were added during early
228+
migration, then superseded after the legacy embedded source was removed.
229+
- Runtime lifecycle changes now go through package operations and PMMP
230+
restarts, not embedded runtime start/stop commands.
237231
- Kept the legacy `/easylibrary libs install <library> [channel] [confirm]`
238232
command as a compatibility standalone PHAR installer while the 3.x package
239233
manager becomes the preferred path.
@@ -242,8 +236,8 @@ elprobe run <package>
242236

243237
- Added command provider diagnostics to `/easylibrary doctor`.
244238
- EasyLibrary reports whether `imperazim\command\Command` comes from
245-
package-backed `LibCommand`, standalone `LibCommand`, legacy embedded source
246-
or an unknown/missing provider.
239+
package-backed `LibCommand`, standalone `LibCommand` or an unknown/missing
240+
provider.
247241
- Added `CommandClassAvailability` as the shared runtime check for rich
248242
LibCommand classes and legacy command hooks.
249243
- Added `CommandProviderResolver` and `CommandBackendResolver`.
@@ -262,8 +256,8 @@ elprobe run <package>
262256
- `/easylibrary packages install <package> [channel] [confirm]`;
263257
- `/easylibrary packages repair <package|all> [confirm]`;
264258
- `/easylibrary packages cleanup [confirm]`.
265-
- Embedded LibCommand hook calls are guarded so future builds without embedded
266-
command classes can still reach package recovery commands.
259+
- Missing LibCommand providers fall back to a native PMMP recovery command so
260+
operators can still install or repair the package-backed command provider.
267261

268262
### Runtime inventory commands
269263

@@ -309,11 +303,10 @@ elprobe run <package>
309303

310304
### Runtime compatibility hardening
311305

312-
- `LibraryModules` now checks whether LibPlaceholder, LibTrigger and LibWorld
313-
runtime classes are available before starting or stopping legacy embedded
314-
runtimes.
315-
- Embedded Placeholder and World command registries are optional when rich
316-
LibCommand commands are unavailable.
306+
- `LibraryModules` now acts as a compatibility boundary for removed embedded
307+
runtimes and points operators toward package-backed or standalone providers.
308+
- Placeholder and World command registries live in their respective package or
309+
standalone repositories, not in the EasyLibrary core.
317310
- `PluginToolkit::getDatabase()` now fails with a controlled plugin exception
318311
when LibDB/`DBManager` is unavailable.
319312
- `LibraryStatusService` checks manager availability before reading embedded
@@ -341,5 +334,6 @@ elprobe run <package>
341334
- Proxy folders under `plugins/` are still required when PMMP plugin identity
342335
must satisfy `depend`, `softdepend`, `/pl` and `getPlugin()`.
343336
- Config Split currently covers `package-manager` and `library-installer`.
344-
- Legacy embedded classes still exist during migration and must be audited
345-
before the stable `3.0.0` release.
337+
- Legacy embedded source has been removed from the EasyLibrary core. Remaining
338+
3.0-dev hardening should focus on package lifecycle, docs/wiki and release
339+
validation.

0 commit comments

Comments
 (0)