Ship v11- and v12-aware }rushti.load.results TI (closes #154)#155
Merged
Conversation
The single hard-coded process body shipped by `rushti build` failed on TM1
v12 because it referenced removed/unsupported functions
(CubeGetLogChanges / CubeSetLogChanges in the prolog, ExecuteCommand in the
epilog). `_create_process` now branches on `integerize_version(tm1.version, 2)`
and installs PROCESS_PROLOG_V12 / PROCESS_EPILOG_V12 against v12 targets; the
v11 body is unchanged. Source-file cleanup on v12 uses the TM1-native
`ASCIIDelete(pSourceFile)` instead of `ExecuteCommand('cmd /c del …')`.
The same version branching is applied to the test fixture in
`tests/integration/tm1_setup.py` so integration runs against v12 install the
correct body. New unit tests assert the v12 body has zero occurrences of the
forbidden symbols and uses `ASCIIDelete`. A v11 parallel of
`TestResultPushV12::test_auto_load_results` exercises the legacy body end to
end on tm1srv01.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
rushti buildnow installs a TM1-version-aware}rushti.load.resultsTI body. On v12 the body dropsCubeGetLogChanges/CubeSetLogChanges/ExecuteCommand(all removed or unsupported on v12) and usesASCIIDelete(pSourceFile)for source-file cleanup. v11 body is unchanged._create_processbranches onintegerize_version(tm1.version, 2) >= 12— reuses the existing pattern, no new helper, no extra TM1 round-trip (version is already cached onTM1Service).tests/integration/tm1_setup.pyso integration setup against v12 installs the correct body.Closes #154.
Test plan
pytest tests/unit/test_tm1_build.py— 27/27 pass, includes newTestProcessBodyVersionSelectionasserting v11 keeps legacy calls and v12 has zeroCubeGetLogChanges/CubeSetLogChanges/ExecuteCommandand usesASCIIDelete.pytest tests/integration/test_v11_v12_build.py -m requires_tm1— 10/10 pass againsttm1srv01(v11) andtm1srv02(v12).pytest tests/integration/test_v11_v12_results.py -m requires_tm1— 6/6 pass, including:TestResultPushV12::test_auto_load_results— full}rushti.load.resultsexecution on v12 with no TI error (smoking-gun proof the v12 body compiles and runs).TestResultPushV11::test_auto_load_results(new) — symmetric coverage on v11 added in this PR.🤖 Generated with Claude Code