[dotnet] Generate atoms statically#16608
Conversation
PR Compliance Guide 🔍(Compliance updated until commit e2cac36)Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label Previous compliance checksCompliance check up to commit 486f308
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||||
shs96c
left a comment
There was a problem hiding this comment.
Bazel bits look like they should work
|
I am merging this. Only one risk I see in the future: when we escape C# literals via |
User description
Generate atoms as compilation unit instead of embedded assembly resources.
🔗 Related Issues
Fixes #16600
💥 What does this PR do?
ResourceUtilities.cs💡 Additional Considerations
🔄 Types of changes
PR Type
Enhancement, Tests
Description
Generate JavaScript atoms as static C# strings instead of embedded resources
Create Bazel rule and Python tool to compile atoms into ResourceUtilities partial class
Replace runtime resource loading with direct string references throughout codebase
Remove embedded resource dependencies from build configuration
Diagram Walkthrough
File Walkthrough
6 files
New Bazel rule for resource generationPython tool to generate C# resource classDefine py_binary for resource generatorExport generated_resource_utilities ruleReplace embedded resources with generated classUpdate build targets to generate resources6 files
Convert to partial class for code generationUse generated webdriver_prefs string constantRemove resource loading, use generated stringReplace mutation listener resource with constantUse generated find_elements string constantReplace atom resource loading with constants