revali_construct 3.0.0
revali_construct: ^3.0.0 copied to clipboard
Foundation for creating constructs for Revali
CHANGELOG #
3.0.0 | 08.15.26 #
Breaking #
- Remove
GenerateConstructType.buildAndConstructs. It could not honour its name: it reportedisBuild, and the generator branchesif (isBuild) { build makers } else { server and other makers }, so it took the build branch and silently skipped every construct — the opposite of "both".revali buildpassed it nowhere, but a hidden--type buildAndConstructslooked like the way to make a build regenerate the client, and quietly did nothing of the sort. The promote step had a matchingisBuild && isConstructsbranch written for the promise rather than the behaviour, replacing the whole.revalitree with outputs that phase never generated; it was unreachable and is gone too. The two remaining values are mutually exclusive, which is what the generator always assumed. Running both phases is the caller's job —revali buildnow does it explicitly, in order.
Features #
- Add
MetaConsumerandMetaRoute.consumers, describing methods annotated with@Consumesso constructs can generate against them. Kept separate fromMetaMethodrather than folded into it: a consumer has no HTTP verb, no path and no request to bind from, so every field they would share is one that does not apply.
2.4.0 | 08.05.26 #
Features #
- Add
TargetOs/Archenums andCompiledExecutableto describe native executables compiled byrevali build. - Add
RevaliBuildContext.compiledExecutables, populated wheneverrevali.yamlhas abuild:section, so build-type constructs can package an already-compiled executable instead of compiling one themselves. - Add a
build:section toRevaliYaml(BuildSettingsConfig) fortarget_os,target_arch, andstrip_debug_info. - Allow
AnyFileto carry binary content via a newbytesfield, written withwriteAsBytesinstead ofwriteAsStringwhen present.
2.3.0 | 08.04.26 #
Features #
- Allow
ServerDirectoryto include additional generated files alongsideserver.dartviaadditionalFiles.
2.2.0 | 06.17.26 #
Features #
- Add
CoalescingReloadQueueto serialize hot-reload restarts and coalesce concurrent reload requests. - Add
fileUriToRelativeImportPathfor cross-platform import paths in generated Dart source.
Enhancements #
- Use POSIX paths in generated
partandpart ofdirectives for Windows compatibility. - Handle uncaught errors during hot reload with stack traces.
2.0.4 | 03.05.26 #
Features #
- Add
HotReloadConfigmodel withexcludelist for hot reload path filtering - Add
hot_reloadconfiguration toRevaliYamlfor excluding paths from reload triggers
2.0.3 | 01.28.26 #
Enhancements #
- Prints error messages when exceptions are thrown during server creation
1.8.0 | 08.16.25 #
Features #
- Improve hot reload performance
- Debounce changes to slow hot reload frequency
- Pass objects instead of strings to
stderrto improve communication withrevali
1.7.0 | 05.08.25 #
Features #
- Add
isEnumfield toMetaTypeclass - Get
fromJson/toJsonmethods from enum types
1.4.0 | 03.26.25 #
1.3.0 | 03.24.25 #
1.1.1 | 12.11.24 #
Enhancements #
- Add assertion checks for
DartFileto ensure that part directives are unique
1.0.0 | 11.14.24 #
- Initial Release