Upgrade to Micronaut 4.10.6#951
Conversation
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…lementation Micronaut 4.10 deprecated the LocalStorageOperations constructor making it impossible to programmatically create local file system ObjectStorageOperations. This change: - Adds custom LocalStorageOperations class in io.seqera.wave.service.localfs - Implements ObjectStorageOperations interface with upload, retrieve, delete, exists, listObjects, and copy operations - Includes path traversal attack prevention - Removes micronaut-object-storage-local dependency from build.gradle - Updates ObjectStorageOperationsFactory to use the new implementation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: munishchouhan <hrma017@gmail.com>
|
Got error while doing cotainer mirroring, but its happening in prod too, so not related to these changes |
|
Weird I am not getting this error in local |
|
Seems related to K8s |
In local its even working with k8s |
|
ok got it, issue with nodeselectors |
|
found the root cause |
|
since this we will not change, i will make the changes in node selector |
|
fix: #953 |
Signed-off-by: munishchouhan <hrma017@gmail.com>
This reverts commit cf8ec80.
|
@claude review |
|
Claude finished @pditommaso's task —— View job Code Review Completed
Review SummaryThis is a solid implementation that effectively replaces the deprecated Micronaut ✅ StrengthsSecurity
Implementation Quality
Test Coverage
Integration
💡 Minor SuggestionsDocumentation
Code Style
Test Enhancements
🔧 Technical AssessmentMemory Efficiency: ✅ Uses streams properly, no memory leaks Recommendation✅ APPROVE - This PR successfully addresses the Micronaut 4.10 compatibility issue while maintaining security and functionality. The implementation is production-ready and well-tested. |
|
All the features successfully tested in local and dev except mirror |
|
Let's merge post holidays break |
Signed-off-by: Paolo Di Tommaso <paolo.ditommaso@gmail.com>
Summary
LocalStorageOperationsclass inio.seqera.wave.service.localfspackage to replace the deprecated MicronautLocalStorageOperations@EachBeanand@Requiresannotations that require bean injection, making programmatic instantiation impossiblemicronaut-object-storage-localdependency since we now have our own implementationChanges
LocalStorageOperations.groovy- Custom implementation ofObjectStorageOperations<Path, Path, Boolean>LocalStorageOperationsTest.groovy- Comprehensive test coverage (11 test cases)ObjectStorageOperationsFactory.groovy- Use new custom implementationbuild.gradle- Remove unusedmicronaut-object-storage-localdependencyTest plan
LocalStorageOperationsTesttests passBuildLogsServiceTesttests pass (uses ObjectStorageOperations)🤖 Generated with Claude Code