You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Non-generic AbsolutePath and ExecResult structured readers return native JSON, TOML, YAML, and XML document models; AbsolutePath can also write YAML and XML document models.
:init can add recursively discovered task sources to a configured solution folder, synchronizing individual file entries for .sln and .slnx.
AbsolutePath.GetAncestry() for traversing a path from itself through its root.
C# tasks can declare an assembly-level TaskDescription shown in task lists, task help, and shell completion.
AbsolutePath helpers for user profile, documents, application data, local application data, Program Files, and 32-bit Program Files directories.
Do.CreateTempDirectory() and Do.CreateTempFile() for creating uniquely named temporary artifacts with optional prefixes and file extensions.
Changed
Default solution discovery now considers only .sln and .slnx files directly in the DotNetDo root; it no longer searches ancestor directories.
Joining two AbsolutePath values with / is now rejected at compile time instead of binding through the implicit string conversion.
Do.Secret(...) now returns OptionalSecret; .Required() and new Secret(value) produce a Secret with a non-nullable value.
Bare do output now shows basic task invocation usage and a clearly headed task list.
AbsolutePath.Parent and RelativePath.Parent are now non-nullable. Absolute roots throw on parent access; relative parents continue with .. segments.