Skip to content

chore: audit compliance, dependency updates, benchmark port, and 1.0.0-beta.3 release prep#9

Merged
StevenTCramer merged 5 commits into
masterfrom
dev
Jul 3, 2026
Merged

chore: audit compliance, dependency updates, benchmark port, and 1.0.0-beta.3 release prep#9
StevenTCramer merged 5 commits into
masterfrom
dev

Conversation

@StevenTCramer

Copy link
Copy Markdown
Contributor

Summary

  • ganda audit compliance (22/22 checks pass): scaffold bin/dev + tools/dev-cli (TimeWarp.Nuru), TimeWarp.Build.Tasks, BannedApiAnalyzers + BannedSymbols.txt, .envrc, memsearch git hooks, VS Code window-icon config; standardize runfile shebangs and #:project directives; rename ci-cd.yml to workflow.yml. TimeWarp.Amuru bumped to 1.0.0-beta.34 (the scaffolded post-commit hook needs Git.FindRoot).
  • Dependency updates: 9 packages to latest stable (Test.Sdk 18.7.0, coverlet 10.0.1, BenchmarkDotNet 0.15.8, Roslynator 4.15.0, NetAnalyzers 10.0.301, CodeStyle 5.6.0, Fixie.TestAdapter 4.2.0).
  • Benchmarks revived: the benchmark project still targeted the deleted FlexNode API and was outside the solution (silently broken since the rewrite). Ported to the current API and added to the .slnx. First results (Ryzen 9 7950X3D): simple layout 2.6us, 100 wrapped children 55us, cached re-layout 578ns — well within task 138 targets.
  • Release prep for 1.0.0-beta.3 (kanban task 140): MIT LICENSE with Yoga attribution (replaces a dangling Unlicense reference), readme rewritten against the current Node/Style/CalculateLayout API with a verified example, version bumped from the already-published beta.2. Local dotnet pack verified: dll + readme + logo, MIT expression, correct version.

Verification

  • dotnet test after every change: 1335 passed / 0 failed / 3 skipped.
  • ganda repo audit: 22/22 pass.
  • Benchmarks executed end-to-end; layout demo and bin/dev CLI smoke-tested.
  • Readme example compiled and run; documented output matches actual output.

🤖 Generated with Claude Code

StevenTCramer and others added 5 commits July 3, 2026 16:02
Apply ganda repo audit --fix: scaffold bin/dev + tools/dev-cli
(TimeWarp.Nuru dev CLI), add TimeWarp.Build.Tasks and
BannedApiAnalyzers with BannedSymbols.txt, standardize runfile
shebangs to env -S and the sample's #:project directive to
$(SourceDirectory), rename ci-cd.yml to workflow.yml, add .envrc,
memsearch scaffold with git hooks, VS Code window-icon config, and the
expected tests/, skills/, kanban/backlog directories. All 22 checks
pass; suite unchanged (1335/0/3); layout demo and dev CLI verified
working.

Co-Authored-By: Claude Fable 5 <[email protected]>
The memsearch post-commit hook scaffolded by ganda uses Git.FindRoot,
which does not exist in the previously pinned 1.0.0-beta.5. Verified
the hook, runfiles/build.cs, bin/dev, and the test suite (1335/0/3)
against the new version.

Co-Authored-By: Claude Fable 5 <[email protected]>
Fixie.TestAdapter 4.2.0, Microsoft.NET.Test.Sdk 18.7.0,
coverlet.collector 10.0.1, BenchmarkDotNet 0.15.8, Roslynator 4.15.0
(x3), Microsoft.CodeAnalysis.NetAnalyzers 10.0.301,
Microsoft.CodeAnalysis.CSharp.CodeStyle 5.6.0. Suite verified:
1335 passed, 0 failed, 3 skipped.

Co-Authored-By: Claude Fable 5 <[email protected]>
… to the solution

The benchmark project still targeted the deleted FlexNode /
FlexLayoutEngine fluent API and was not in the .slnx, so it had been
silently broken since the Yoga-port rewrite. Ported to Node / Style /
CalculateLayout.Calculate and added to the solution so CI builds it.

First results (Ryzen 9 7950X3D, .NET 10): simple 3-child layout 2.6us,
10-level nesting 2.3us, 100 wrapped children 55us, flex-grow row 4.4us,
50-item wrap+gap 29us, cached re-layout 578ns - well within the
performance targets recorded in task 138.

Co-Authored-By: Claude Fable 5 <[email protected]>
…version bump

Clear the three release blockers:

- Add MIT LICENSE (with attribution note for Facebook's Yoga, whose
  behavior this from-scratch C# implementation models) and switch
  PackageLicenseExpression from Unlicense to MIT. The previous
  Unlicense expression referenced a LICENSE file that did not exist.
- Rewrite readme against the current Node/Style/CalculateLayout API;
  the old readme documented the deleted FlexNode/FlexLayoutEngine API
  and ships inside the package. The new usage example is verified to
  compile and produce the documented output.
- Bump version 1.0.0-beta.2 -> 1.0.0-beta.3 (beta.2 was published from
  the previous, now-replaced implementation).

Verified with dotnet pack: nupkg carries the dll, new readme, and logo
with license expression MIT and version 1.0.0-beta.3. Release steps
tracked in kanban task 140.

Co-Authored-By: Claude Fable 5 <[email protected]>
@StevenTCramer StevenTCramer merged commit 1dfad96 into master Jul 3, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant