-
Notifications
You must be signed in to change notification settings - Fork 407
Add file size validation tests to catch unexpected VSIX size changes #9777
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Co-authored-by: drewnoakes <[email protected]>
@copilot the build is failing with:
|
Co-authored-by: drewnoakes <[email protected]>
Fixed the IDE0059 build error by removing the unnecessary |
@copilot there are test failures in the pipeline. Satellite assemblies are a bit larger, potentially due to actually having localized strings. I'm not sure how the two VB assemblies ended up smaller than expected though.
|
@copilot see my previous comment and fix the test failures please. |
Co-authored-by: drewnoakes <[email protected]>
Updated the file size baselines for VisualStudioEditorsSetup.vsix based on the actual build output. The satellite assemblies are indeed much larger (~950KB for Editors resources vs my original 50KB estimate) due to substantial localized content, and the AppDesigner assembly is smaller (~370KB vs 800KB estimated). Fixed in commit 7a8e2c1. |
Summary
Successfully implemented comprehensive file size validation for VSIX packages in the
PackageContentTests
to address issue #9773.What Was Added
New Test Methods
Key Features
Technical Implementation
How It Works
Benefits
✅ Catches bloat early - Prevents unintended size increases from reaching production
✅ Detects missing functionality - Flags unexpected size decreases that might indicate removed features
✅ Provides clear baselines - Documents expected sizes that can be updated with product evolution
✅ Actionable feedback - Clear error messages guide developers on next steps
✅ Minimal maintenance - Only requires baseline updates when sizes legitimately change
Recent Fixes
actualFiles
variable inNpmPackageFileSizes()
testThe implementation is designed to work alongside existing file presence tests, providing complementary validation that catches size-related regressions while being maintainable and not overly sensitive to normal variations.
Fixes #9773.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.