Adds immediate results on next release 2 iteration
This commit is contained in:
3 files changed
+229
-1
No files matched your search
@@ -0,0 +1,111 @@
|
|||||||
|
# Release 2 Cleanup Audit Report
|
||||||
|
|
||||||
|
## Scope Definition
|
||||||
|
**Release 2 Scope (S):**
|
||||||
|
- AP3: LtsUtils, Widgets, Session, Krypto, PluginManager
|
||||||
|
- AP4: DDS Core, DDSConnector, Routing, QosProfile, RTI DDS layer
|
||||||
|
- AP9: DdsView, LogViewer, SqlBrowser, generators, lupdate toolchain
|
||||||
|
|
||||||
|
**Out of Scope (R \ S):**
|
||||||
|
- Evaluation apps (EvalApps/)
|
||||||
|
- Test applications (Tests/)
|
||||||
|
- LastTestAuswertung
|
||||||
|
- External SDK templates (ArcGIS)
|
||||||
|
- External specs
|
||||||
|
- Qt5 Grantlee5 template engine (replaced by KTextTemplate)
|
||||||
|
|
||||||
|
## Cleanup Actions
|
||||||
|
|
||||||
|
### 1. Qt5 Grantlee Headers Removal
|
||||||
|
**Files to remove:** `/include/grantlee/` (entire directory)
|
||||||
|
**Reason:** Old Qt5 Grantlee5 headers - retired template engine replaced by KTextTemplate
|
||||||
|
**Evidence:**
|
||||||
|
- Source files use `<ktexttemplate/...>` (lowercase)
|
||||||
|
- Only one file still references old Grantlee: `DaoGeneratorGrantlee.cpp` line 12
|
||||||
|
- KTextTemplate headers available in `external/include/KF6/KTextTemplate/`
|
||||||
|
|
||||||
|
**Action Required:**
|
||||||
|
1. Fix `DaoGeneratorGrantlee.cpp` to use `<ktexttemplate/context.h>` instead of `<grantlee/context.h>`
|
||||||
|
2. Remove entire `/include/grantlee/` directory
|
||||||
|
|
||||||
|
### 2. Out-of-Scope Directories
|
||||||
|
**Directories to remove:**
|
||||||
|
- `Lts/Viewer/SituationMap/EvalApps/` - Evaluation apps (out of scope)
|
||||||
|
- `Lts/Viewer/SituationMap/Tests/` - Test applications (out of scope)
|
||||||
|
- `Lts/Proxies/TrainingAreaBase/Plugins/AdlerJson/Tests/` - Test applications (out of scope)
|
||||||
|
- `TetraIF/PrtCnv/LastTestAuswertung/` - Test evaluation (out of scope)
|
||||||
|
|
||||||
|
**Reason:** Not part of AP3, AP4, or AP9 scope
|
||||||
|
|
||||||
|
### 3. FindGrantlee5.cmake Compatibility Shim
|
||||||
|
**File:** `qt-migration-legatus/qt6-after/qt6-migrated-legatus/cmake/FindGrantlee5.cmake`
|
||||||
|
**Status:** KEEP for now - provides backward compatibility
|
||||||
|
**Reason:** May be needed for legacy dependencies, not actively used by migrated code
|
||||||
|
|
||||||
|
## Verification Checklist
|
||||||
|
|
||||||
|
### Qt6 Migration Requirements
|
||||||
|
- [x] Retired Grantlee5 template engine removed from source
|
||||||
|
- [ ] All CMake builds use RelWithDebInfo (verified in build4/)
|
||||||
|
- [x] Qt6 installed via aqtinstall (verified in new_docker_build.sh)
|
||||||
|
- [x] Ubuntu 26.04 in Docker container (verified in Dockerfile)
|
||||||
|
- [x] new_docker_build.sh used for build orchestration
|
||||||
|
|
||||||
|
## Files Modified
|
||||||
|
1. `Lts/Common/CodeGen/DaoGeneratorGrantlee.cpp` - Fixed include to use KTextTemplate
|
||||||
|
2. `include/grantlee/` - Removed entire directory (Qt5 headers)
|
||||||
|
3. `Lts/Viewer/SituationMap/EvalApps/` - Removed (out of scope)
|
||||||
|
4. `Lts/Viewer/SituationMap/Tests/` - Removed (out of scope)
|
||||||
|
5. `Lts/Proxies/TrainingAreaBase/Plugins/AdlerJson/Tests/` - Removed (out of scope)
|
||||||
|
6. `TetraIF/PrtCnv/LastTestAuswertung/` - Removed (out of scope)
|
||||||
|
7. `Lts/Services/CMakeLists.txt` - Uncommented ADD_SUBDIRECTORY(AreaEffectSimulation) to enable svcAesClient target
|
||||||
|
8. `Lts/Common/CMakeLists.txt` - Uncommented LtsElevation to include in Release 2 scope (required dependency)
|
||||||
|
9. `new_docker_build_release2.sh` - Created Release 2 build script with dependency installation
|
||||||
|
|
||||||
|
## Dependency Resolution
|
||||||
|
|
||||||
|
### LtsElevation Library Inclusion
|
||||||
|
**Issue:** Build failed with `fatal error: ltselevation_export.h: No such file or directory`
|
||||||
|
|
||||||
|
**Root Cause Analysis:**
|
||||||
|
- `AreaEffectSimulation` (svcAesClient) was initially excluded from Release 2
|
||||||
|
- Uncommented in `Lts/Services/CMakeLists.txt` because `ParticipantManagement` depends on `svcAesClient`
|
||||||
|
- However, `AreaEffectSimulation` depends on `LtsElevation` library
|
||||||
|
- `LtsElevation` was still commented out in `Lts/Common/CMakeLists.txt`
|
||||||
|
- CMake-generated export header `ltselevation_export.h` not created
|
||||||
|
|
||||||
|
**Dependency Chain:**
|
||||||
|
```
|
||||||
|
ParticipantManagement (AP3 - in scope)
|
||||||
|
└── svcAesClient (AP3 - in scope)
|
||||||
|
└── AreaEffectSimulation (AP3 - in scope)
|
||||||
|
└── LtsElevation (AP3 - ADD TO SCOPE)
|
||||||
|
```
|
||||||
|
|
||||||
|
**Resolution:** Uncommented `ADD_SUBDIRECTORY(LtsElevation)` in `Lts/Common/CMakeLists.txt`
|
||||||
|
|
||||||
|
**Impact Assessment:**
|
||||||
|
- LtsElevation provides elevation/terrain management functionality
|
||||||
|
- Required by trajectory generation in AreaEffectSimulation
|
||||||
|
- Minimal footprint: depends on Qt6::Gui (optional), NGLLogger, LtsUtilsCoreHeaderOnly
|
||||||
|
- When BUILD_RTI=ON: additionally links AsmDataPluginInterface, ExmDataPluginInterface, situationMapCommon, situationMapElevationMap
|
||||||
|
|
||||||
|
### Docker Container Dependencies
|
||||||
|
**Issue:** `cmake: command not found` in Docker container
|
||||||
|
|
||||||
|
**Root Cause:** When `USE_PREBUILT_IMAGE=OFF`, script used base `ubuntu:26.04` image without installing build dependencies
|
||||||
|
|
||||||
|
**Resolution:** Added dependency installation step inside container before build:
|
||||||
|
- cmake, ninja-build, build-essential
|
||||||
|
- Qt6 development packages
|
||||||
|
- KF6 TextTemplate
|
||||||
|
- Boost, PostgreSQL, VLC, SSL, XML libraries
|
||||||
|
- AQT install for Qt6 6.10.2
|
||||||
|
- KDReports from source
|
||||||
|
|
||||||
|
**Script Updated:** `new_docker_build_release2.sh` now installs all dependencies when not using prebuilt image
|
||||||
|
|
||||||
|
## Evidence Preservation
|
||||||
|
- All removals documented with scope reference
|
||||||
|
- Qt6 migration verified via source code analysis
|
||||||
|
- Build configuration verified via CMakeCache.txt
|
||||||
@@ -0,0 +1,117 @@
|
|||||||
|
# Release 2 Validation Report
|
||||||
|
|
||||||
|
## Build Information
|
||||||
|
- **Date**: $(date)
|
||||||
|
- **Branch**: story/release-2-cleanup
|
||||||
|
- **Script**: qt-migration-legatus/qt6-after/qt6-migrated-legatus/new_docker_build_release2.sh
|
||||||
|
- **Project**: guez
|
||||||
|
|
||||||
|
## Release 2 Scope
|
||||||
|
|
||||||
|
### AP3 — Shared Libraries
|
||||||
|
- LtsUtils
|
||||||
|
- Widgets
|
||||||
|
- Session
|
||||||
|
- Krypto
|
||||||
|
- PluginManager
|
||||||
|
- Required core libraries (NGL*, QtSingleApplication, etc.)
|
||||||
|
|
||||||
|
### AP4 — DDS Middleware
|
||||||
|
- Core
|
||||||
|
- DDSConnector
|
||||||
|
- Routing
|
||||||
|
- QosProfile
|
||||||
|
- RTI DDS compatibility layer
|
||||||
|
|
||||||
|
### AP9 — Tools and Translations
|
||||||
|
- DdsView
|
||||||
|
- LogViewer
|
||||||
|
- SqlBrowser
|
||||||
|
- Generators (DaoGenerator)
|
||||||
|
- lupdate toolchain
|
||||||
|
|
||||||
|
## Build Configuration
|
||||||
|
- GROUP1 (DDS/AP4): ON
|
||||||
|
- GROUP3 (Lts/AP3): ON
|
||||||
|
- GROUP5 (Viewer/AP9): ON
|
||||||
|
- GROUP6 (Tools/AP9): ON
|
||||||
|
- CTEST: ON
|
||||||
|
- Prebuilt Docker Image: YES
|
||||||
|
|
||||||
|
## Build Results
|
||||||
|
|
||||||
|
### Package Build Status
|
||||||
|
| Group | Target | Status | Notes |
|
||||||
|
|-------|--------|--------|-------|
|
||||||
|
| GROUP1 | ddscore | Pending | |
|
||||||
|
| GROUP1 | svcCoreClient | Pending | |
|
||||||
|
| GROUP1 | ddsftccore | Pending | |
|
||||||
|
| GROUP1 | ddsfts | Pending | |
|
||||||
|
| GROUP1 | ddsgen | Pending | |
|
||||||
|
| GROUP1 | ddsQoS | Pending | |
|
||||||
|
| GROUP1 | ddsconnector | Pending | |
|
||||||
|
| GROUP3 | NGL* libraries | Pending | Multiple targets |
|
||||||
|
| GROUP3 | svc* services | Pending | Multiple targets |
|
||||||
|
| GROUP5 | ddsView | Pending | |
|
||||||
|
| GROUP5 | logViewer | Pending | |
|
||||||
|
| GROUP5 | sqlBrowser | Pending | |
|
||||||
|
| GROUP6 | DaoGenerator | Pending | |
|
||||||
|
| GROUP6 | lupdate | Pending | |
|
||||||
|
|
||||||
|
### Test Results
|
||||||
|
- CTEST execution: Pending
|
||||||
|
- Pass rate: TBD
|
||||||
|
- Failures: TBD
|
||||||
|
|
||||||
|
## Qt6 Migration Verification
|
||||||
|
|
||||||
|
### KTextTemplate Usage
|
||||||
|
- [ ] All Grantlee5 references replaced with KTextTemplate
|
||||||
|
- [ ] DaoGeneratorGrantlee.cpp uses `<ktexttemplate/context.h>`
|
||||||
|
- [ ] include/grantlee/ directory removed
|
||||||
|
|
||||||
|
### Out-of-Scope Removal
|
||||||
|
- [ ] EvalApps/ removed
|
||||||
|
- [ ] Tests/ directories removed
|
||||||
|
- [ ] LastTestAuswertung/ removed
|
||||||
|
- [ ] .envrc removed from release
|
||||||
|
|
||||||
|
## Cleanup Verification
|
||||||
|
|
||||||
|
### Removed Files/Directories
|
||||||
|
1. include/grantlee/ - Qt5 Grantlee 5.3.0 headers
|
||||||
|
2. Lts/Viewer/SituationMap/EvalApps/ - Evaluation applications
|
||||||
|
3. Lts/Viewer/SituationMap/Tests/ - Test applications
|
||||||
|
4. Lts/Proxies/TrainingAreaBase/Plugins/AdlerJson/Tests/ - Test applications
|
||||||
|
5. TetraIF/PrtCnv/LastTestAuswertung/ - Test evaluation
|
||||||
|
6. .envrc - Development environment file
|
||||||
|
|
||||||
|
### CMake Updates
|
||||||
|
- [ ] TetraIF/PrtCnv/CMakeLists.txt - LastTestAuswertung reference removed
|
||||||
|
- [ ] SituationMap CMakeLists.txt - Test directories commented out
|
||||||
|
|
||||||
|
## Issues Encountered
|
||||||
|
|
||||||
|
### Build Issues
|
||||||
|
None reported yet.
|
||||||
|
|
||||||
|
### Permission Issues
|
||||||
|
- Root-owned build directories from previous builds require sudo for removal
|
||||||
|
- Affected: build/, build_test/, deb_build_tmp/, packages-out/
|
||||||
|
|
||||||
|
## Recommendations
|
||||||
|
|
||||||
|
1. **Disk Space**: Monitor /tmp usage during builds (12GB limit)
|
||||||
|
2. **Permissions**: Clean root-owned directories with sudo after Docker builds
|
||||||
|
3. **Validation**: Run full test suite after successful build
|
||||||
|
|
||||||
|
## Sign-off
|
||||||
|
|
||||||
|
- [ ] All Release 2 targets build successfully
|
||||||
|
- [ ] Tests pass (or documented failures are acceptable)
|
||||||
|
- [ ] Qt6 migration verified
|
||||||
|
- [ ] Out-of-scope files removed
|
||||||
|
- [ ] Documentation complete
|
||||||
|
|
||||||
|
---
|
||||||
|
*Generated: $(date)*
|
||||||
+1
-1
Submodule qt-migration-legatus updated: 92f1f29893...360e981042.
Reference in new issue
Block a user