tom_d4rt_dcli 1.2.0
tom_d4rt_dcli: ^1.2.0 copied to clipboard
Base D4rt CLI with dcli bridges. Extensible foundation for D4rt tools.
1.2.0 #
Fixed — .start-execute blocks of bare statements failed to parse (tccc5) #
D4rt.execute(source:) parses its argument as a compilation unit and calls
the top-level main. A .start-execute block was handed straight to it, so a
block of bare statements
.start-execute
var testVar = 100;
verify(testVar == 100, '.start-execute variable works');
.end
parsed as a top-level variable followed by a function declaration with no body
and failed with Expected to find ')' / A function body must be provided.
The three-case rule that fixes this already existed — but only on the stdin
path. It is now the top-level prepareProgramSource, applied at every entry
point that means "run this as a fresh program": stdin, the exec command,
.start-execute, and CliController.execute.
- imports +
main→ run unchanged mainwithout imports → the bridge import block is prefixed- bare statements → prefixed and wrapped in a generated
main
The generated wrapper is async when the statements await, matching what
.start-script already did; await inside a string or comment does not count.
.start-execute also awaits a Future result now instead of printing it.
Requires tom_d4rt >= 1.29.0, without which a run whose assertions all pass is
still failed by phantom extension-registration errors. Routing .start-execute
through the bridge import block — which it needs, because a bridged library's
top-level functions (verify, verifyEquals, …) only become visible through
its import — is what made those errors reachable from this path.
1.1.6 #
- Fix duplicate-export collisions that broke AOT compilation in hosted
consumers (e.g.
tom_core_d4rt'sd4rtbinary). The VS Code integration re-export now hidesPermissionResult,ConversationExchange,ProjectInfoandWorkspaceInfoso the package's ownbot_modetypes win, andtelegram_bot_serverhides the VS CodeConversationExchangeso the localconversation_trailtype is used. No public API change for the package's own types; the VS Code variants of those four names are no longer re-exported (importtom_vscode_scripting_apidirectly if you need them).
1.1.5 #
- Housekeeping: test artifacts now live in a gitignored
testlog/folder;doc/no longer ships machine-generated baselines or last_testrun.json. No code changes.
1.1.4 #
Maintenance #
- Regenerated dcli bridges against the current
tom_d4rt_generator1.9.0 (summary-backed extraction, GEN-095 and follow-up fixes). - Pinned dependency constraints to current releases (
tom_d4rt^1.8.20,tom_vscode_scripting_api^1.0.1,tom_chattools^1.0.2).
1.1.3 #
Maintenance #
- Renamed
version.g.dart→version.versioner.dart. - Updated barrel import in
tom_d4rt_dcli.dart.
1.1.2 #
Bug Fixes #
- GEN-070 follow-up:
Findclass now properly bridged via generator fix (multi-chain barrel re-export) - Removed
dcli_missing_bridges.dartsupplementary bridge (no longer needed) - Removed
lastModified/setLastModifedtests (not exported from dcli barrel) - Replaced deprecated
symlink()tests withcreateSymLink()tests
Tests #
- All 389 tests pass, 0 failures, 0 skips
1.1.1 #
Bug Fixes #
- DCLI-GEN-001: Added supplementary bridge for missing global functions (
lastModified,setLastModifed,symlink) - DCLI-GEN-002: Added
Findclass bridge with static getters (file,directory,link) - DCLI-VSCODE-001: Fixed VS Code bridge import path and test constructor arguments
- DCLI-LOCK-001: Updated tests for deprecated
NamedLock.withLock(dcli 8.4.2), addedwithLockAsynctests - DCLI-API-001: Fixed
expandDefinetest prefix ($→@) - Symlink bridge uses
createSymLinkinternally (avoids deprecatedsymlink()warning)
Tests #
- All 391 tests pass, 0 failures, 0 skips
1.1.0 #
- Full DCli scripting support now
- Updated tom_d4rt dependency to ^1.8.1
- Regenerated bridges with latest generator (multi-barrel registration, extension filtering)
1.0.0 #
- Initial version.