Skip to content

Conversation

@thomhurst
Copy link
Owner

@thomhurst thomhurst commented Dec 24, 2025

This PR contains the following updates:

Package Type Update Change
TUnit nuget patch 1.6.201.6.28
TUnit.AspNetCore nuget patch 1.6.201.6.28
TUnit.Assertions nuget patch 1.6.201.6.28
TUnit.Assertions.FSharp nuget patch 1.6.201.6.28
TUnit.Core nuget patch 1.6.201.6.28
TUnit.Playwright nuget patch 1.6.201.6.28

Release Notes

thomhurst/TUnit (TUnit)

v1.6.28: 1.6.28

What's Changed
Other Changes

Full Changelog: v1.6.27...v1.6.28

v1.6.27: 1.6.27

What's Changed
Other Changes
  • feat: enhance test configuration isolation and validation in WebApplicationFactory by @​thomhurst in #​4157

Full Changelog: v1.6.25...v1.6.27

v1.6.25: 1.6.25

What's Changed
Other Changes
Dependencies

Full Changelog: v1.6.20...v1.6.25


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

@thomhurst thomhurst added dependencies Pull requests that update a dependency file PATCH renovate-bot labels Dec 24, 2025
Copilot AI review requested due to automatic review settings December 24, 2025 00:53
@thomhurst thomhurst added dependencies Pull requests that update a dependency file PATCH renovate-bot labels Dec 24, 2025
@thomhurst thomhurst enabled auto-merge (squash) December 24, 2025 00:53
@claude
Copy link
Contributor

claude bot commented Dec 24, 2025

PR Review: Dependency Update - TUnit 1.6.20 → 1.6.25

Summary

This is an automated dependency update PR from Renovate Bot that bumps TUnit packages from version 1.6.20 to 1.6.25 across templates and the main package configuration.


✅ Code Quality

LGTM - The changes are straightforward and consistent:

  • All version updates are uniform across the codebase
  • Updates applied to both Directory.Packages.props (centralized package management) and individual template project files
  • No breaking changes expected (patch version bump: 1.6.20 → 1.6.25)

📦 Changes Included in 1.6.25

According to the release notes, this update includes:

  1. Performance improvement: Replaced fixed-length List with Span (perf: replace fixed length List with Span #4153) - aligns with TUnit's performance-first philosophy
  2. New feature: Added NotDiscoverableAttribute to hide tests from discovery (feat: add NotDiscoverableAttribute to hide tests from discovery #4154)
  3. Dependency updates: Polyfill updated to 9.5.0

🔍 Potential Issues

None identified - This is a low-risk patch update:

  • ✅ No code changes required
  • ✅ No API surface changes (patch version)
  • ✅ CI checks are running
  • ✅ Automerge is enabled (appropriate for patch updates)
  • ✅ All TUnit package versions updated consistently

🧪 Test Coverage

N/A for this PR - This is a dependency update that:

  • Doesn't modify test code
  • Doesn't change public APIs
  • Doesn't affect dual-mode implementation
  • Doesn't require snapshot updates

The CI pipeline will validate compatibility across:

  • Multiple OSs (Ubuntu, Windows, macOS)
  • Multiple locales (fr-FR, pl-PL, de-DE)
  • CodeQL security analysis

🚀 Performance Considerations

Positive impact expected: The underlying 1.6.25 release includes a performance optimization (replacing List with Span), which aligns with TUnit's "Performance First" principle from CLAUDE.md.


🔒 Security Concerns

None identified:

  • ✅ Snyk security check passed
  • ✅ Patch version update (low risk)
  • ✅ No new dependencies introduced

📋 Recommendation

APPROVE - This PR is ready to merge once CI passes.

The update is:

  • Low risk (patch version)
  • Consistent across all affected files
  • Includes beneficial performance improvements
  • Properly configured for automerge

📝 Notes

  • All 9 project files updated correctly
  • Central package management in Directory.Packages.props updated
  • Template projects across all variants (C#, F#, VB, AspNet, Aspire, Playwright) updated consistently
  • No manual intervention required after CI passes

Status: ✅ Ready to merge after CI validation

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates TUnit package dependencies from version 1.6.20 to 1.6.25 across project templates and central package management. The update includes performance improvements (replacing fixed-length List with Span) and a new NotDiscoverableAttribute feature introduced in TUnit 1.6.25.

Key Changes:

  • Updated core TUnit packages (TUnit, TUnit.Core, TUnit.Assertions, TUnit.AspNetCore) in Directory.Packages.props
  • Updated TUnit packages in all project templates (C#, F#, VB.NET, ASP.NET, Aspire, Playwright)

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
TUnit.Templates/content/TUnit/TestProject.csproj Updated TUnit to 1.6.25 in C# template
TUnit.Templates/content/TUnit.VB/TestProject.vbproj Updated TUnit to 1.6.25 in VB.NET template
TUnit.Templates/content/TUnit.Playwright/TestProject.csproj Updated TUnit.Playwright to 1.6.25 in Playwright template
TUnit.Templates/content/TUnit.FSharp/TestProject.fsproj Updated TUnit and TUnit.Assertions.FSharp to 1.6.25 in F# template
TUnit.Templates/content/TUnit.Aspire.Test/ExampleNamespace.csproj Updated TUnit to 1.6.25 in Aspire test template
TUnit.Templates/content/TUnit.Aspire.Starter/ExampleNamespace.TestProject/ExampleNamespace.TestProject.csproj Updated TUnit to 1.6.25 in Aspire starter template
TUnit.Templates/content/TUnit.AspNet/TestProject/TestProject.csproj Updated TUnit to 1.6.25 in ASP.NET template
TUnit.Templates/content/TUnit.AspNet.FSharp/TestProject/TestProject.fsproj Updated TUnit and TUnit.Assertions.FSharp to 1.6.25 in ASP.NET F# template
Directory.Packages.props Updated TUnit, TUnit.AspNetCore, TUnit.Core, and TUnit.Assertions to 1.6.25 in central package management

The changes are consistent across all files, properly updating version numbers from 1.6.20 to 1.6.25. All template files maintain proper version alignment for their respective TUnit packages. No issues identified.

@thomhurst thomhurst changed the title chore(deps): update tunit to 1.6.25 chore(deps): update tunit to 1.6.27 Dec 24, 2025
@claude
Copy link
Contributor

claude bot commented Dec 24, 2025

Pull Request Review: TUnit Dependency Update (1.6.20 → 1.6.27)

✅ Overall Assessment

This is a clean, low-risk dependency update PR generated by Renovate Bot. The changes are straightforward version bumps across template files and central package management.


📋 Review Summary

Scope: Patch version update (1.6.20 → 1.6.27)
Changes: 14 additions / 14 deletions across 9 files
Impact: Template projects and centralized package references
Risk Level: ⬇️ Low (patch-level updates, no breaking changes expected)


Positives

  1. Consistent Version Updates: All TUnit package references updated uniformly to 1.6.27
  2. Central Package Management: Proper use of Directory.Packages.props for version control
  3. Template Coverage: All template project types updated (C#, F#, VB, AspNet, Aspire, Playwright)
  4. Clean Diff: No unexpected changes or formatting issues

📦 Packages Updated

  • TUnit: 1.6.20 → 1.6.27
  • TUnit.AspNetCore: 1.6.20 → 1.6.27
  • TUnit.Core: 1.6.20 → 1.6.27
  • TUnit.Assertions: 1.6.20 → 1.6.27
  • TUnit.Assertions.FSharp: 1.6.20 → 1.6.27
  • TUnit.Playwright: 1.6.20 → 1.6.27

🔍 Notable Changes in v1.6.21-v1.6.27

Based on the PR description, recent releases include:

v1.6.27:

  • Enhanced test configuration isolation and validation in WebApplicationFactory

v1.6.25:

  • Performance improvement: Replaced fixed-length List with Span (hot path optimization)
  • New feature: Added NotDiscoverableAttribute to hide tests from discovery

These align with TUnit's performance-first philosophy and provide useful new capabilities.


⚠️ Recommendations

1. Verify Template Functionality

Since these are template updates, consider spot-checking that templates still work correctly:

# Test a sample template (e.g., basic TUnit template)
dotnet new tunit -n TestTemplateProject
cd TestTemplateProject
dotnet test

2. Check for Snapshot Updates (if applicable)

If any of the updated features affect source generator output or public APIs:

  • Run dotnet test TUnit.Core.SourceGenerator.Tests
  • Run dotnet test TUnit.PublicAPI
  • Accept any necessary snapshot updates

However, since this is just a dependency version bump in templates, snapshot changes are unlikely.

3. AutoMerge is Enabled

The PR has automerge enabled. Ensure CI passes before merge:

  • ✅ All builds successful
  • ✅ All tests passing
  • ✅ No unexpected failures

🚀 Performance Impact

The Span optimization in v1.6.25 is particularly noteworthy as it aligns with TUnit's Rule 4: Performance First. This should provide measurable improvements in test discovery/execution hot paths.


🔒 Security Assessment

No security concerns identified:

  • Patch-level updates from the same trusted source (TUnit official releases)
  • No external dependencies introduced
  • No code logic changes in this PR

Code Quality

  • Style Compliance: N/A (version number changes only)
  • Breaking Changes: None (patch-level semantic versioning)
  • Test Coverage: Existing template tests should cover this
  • Documentation: No doc updates needed for dependency bumps

🎯 Final Recommendation

APPROVE

This is a routine maintenance PR that:

  • Keeps templates in sync with latest stable TUnit releases
  • Includes beneficial performance improvements
  • Follows semantic versioning (patch-level only)
  • Has automerge configured appropriately

Action Items:

  • ✅ Let CI complete
  • ✅ Monitor for any unexpected test failures
  • ✅ AutoMerge will handle the merge once checks pass

📝 Notes

  • This PR was auto-generated by Renovate Bot (expected and normal)
  • The changes are mechanical version bumps with no logic modifications
  • Users of templates will benefit from latest bug fixes and performance improvements
  • No manual intervention required unless CI fails

Great maintenance hygiene! 🎉

@claude
Copy link
Contributor

claude bot commented Dec 24, 2025

PR Review: TUnit Package Update (1.6.20 → 1.6.27)

✅ Overall Assessment: APPROVED

This is a clean, automated dependency update from Renovate Bot that updates TUnit package references across the repository.


🔍 Review Findings

Strengths

  1. Consistency: All TUnit package versions are consistently updated to 1.6.27 across:

    • Central package management (Directory.Packages.props): TUnit, TUnit.AspNetCore, TUnit.Core, TUnit.Assertions
    • All 9 template project files: C#, F#, VB, AspNet, Aspire, Playwright variants
  2. Completeness: The PR correctly updates all package references, including:

    • TUnit.Playwright (mentioned in PR description and updated in template)
    • TUnit.Assertions.FSharp (F# templates)
  3. Release Notes Context: The update includes two patch releases (1.6.25 and 1.6.27) with:

    • Performance improvements (Span usage replacing List)
    • New NotDiscoverableAttribute feature
    • Enhanced ASP.NET Core test configuration
  4. Automation: Properly configured with automerge, indicating this is a routine, safe update


📋 Code Quality

  • Clean diff: Only version number changes, no structural modifications
  • No breaking changes: Patch version update (1.6.x) maintains API compatibility
  • Template integrity: All template variations maintain proper structure

🔒 Security & Performance

  • Security: No security concerns identified
  • Performance: Release notes indicate performance improvements (Span optimization in v1.6.25)
  • Testing: Changes are self-contained version bumps; template instantiation tests should validate

⚠️ Observations

Note: TUnit.Playwright is not in Directory.Packages.props central package management (line 88-91 only include TUnit, TUnit.AspNetCore, TUnit.Core, TUnit.Assertions). This appears intentional since:

  • It's only used in one template (TUnit.Playwright)
  • Direct version specification in the template is acceptable for specialized packages
  • No consistency issues detected

🎯 Recommendations

  1. Approve and merge - This is a routine, well-formed dependency update
  2. CI validation - Ensure all template instantiation tests pass
  3. 📝 Optional: Consider adding TUnit.Playwright to Directory.Packages.props for centralized version management (future enhancement, not blocking)

📚 Compliance with CLAUDE.md

  • ✅ No dual-mode implementation required (version bumps only)
  • ✅ No snapshot updates needed (no code generation changes)
  • ✅ No public API changes
  • ✅ No performance-critical code paths affected
  • ✅ Modern C# syntax N/A (configuration files only)

Verdict: This is a textbook example of a clean dependency update. Safe to merge. 🚀

@thomhurst thomhurst changed the title chore(deps): update tunit to 1.6.27 chore(deps): update tunit to 1.6.28 Dec 24, 2025
This was referenced Dec 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file PATCH renovate-bot

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants