chore(deps): bump fprime-yamcs to 0.1.3 (and fprime-xtce to 0.1.2)#413
chore(deps): bump fprime-yamcs to 0.1.3 (and fprime-xtce to 0.1.2)#413yudataguy wants to merge 1 commit into
Conversation
|
Warning Review limit reached
More reviews will be available in 57 minutes and 47 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThis PR updates fprime-yamcs and fprime-xtce to patch releases and extends the YAMCS instance config fix script to support renamed placeholder class names in the newer fprime-yamcs template structure. Changesfprime-yamcs dependency and config compatibility
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Bumps the fprime-yamcs-reference dependency to pick up its uplink/downlink
work (new FprimeFilePacketService for file-downlink reassembly) and the
My*->Fprime* preprocessor/postprocessor class renames.
- requirements.txt: fprime-yamcs 0.1.2 -> 0.1.3, fprime-xtce 0.1.1 -> 0.1.2
to match the upstream reference pins.
- tools/apply-yamcs-instance-config-fix.py: also match the renamed
Fprime{Packet,Command}Pre/Postprocessor classes. The 0.1.3 template
renamed these from My*, which would have made the existing string
replacements silently no-op (the script would not error because its
other edits still fire), leaving custom Java class names in the
generated config. Both old and new spellings are now handled.
Verified against the real 0.1.3 wheel:
- __main__.py is byte-identical to 0.1.2, so the noapp/path patch still applies.
- events/processor.py still has the busy-wait, so the CPU fix still applies.
- The hardened instance-config fix produces CfsPacketPreprocessor + 248-byte
frame/packet lengths + rootContainer with no leftover custom class refs.
The runtime YAMCS config (vendored yamcs/yamcs-data/etc, used via
--yamcs-config-dir) already uses the stock CfsPacketPreprocessor over UDP
CCSDS framing, so behavior is unchanged.
847db72 to
43bb6a9
Compare
What
Bumps the
fprime-yamcs-referencedependency to pick up its uplink/downlink work and theMy*→Fprime*class renames.requirements.txt:fprime-yamcs0.1.2→0.1.3,fprime-xtce0.1.1→0.1.2(matches the upstream reference pins).tools/apply-yamcs-instance-config-fix.py: also match the renamedFprime{Packet,Command}Pre/Postprocessorclasses.Why the patch-script change matters
The 0.1.3 template renamed its placeholder classes (
MyPacketPreprocessor→FprimePacketPreprocessor,MyCommandPostprocessor→FprimeCommandPostprocessor) and added a newFprimeFilePacketService(file-downlink reassembly — the "downlink" piece).Our
apply-yamcs-instance-config-fix.pydoes exact-string.replace()on those class names. Against 0.1.3 those two replacements would silently no-op — and because the script's other edits (frame length, ProcessRunner removal, rootContainer) still fire, it would not hit its "no changes made" guard. It would quietly leave custom Java class names in the generated config. Both old and new spellings are now handled.Compatibility verification (against the real 0.1.3 wheel)
__main__.pyis byte-identical to 0.1.2 →patches/fprime-yamcs-noapp-path.patchstill applies.events/processor.pystill contains thewhile True: passbusy-wait →apply-events-cpu-fix.pystill applies.apply-yamcs-instance-config-fix.pyrun against the 0.1.3 template producesCfsPacketPreprocessor+ 248-byte frame/packet lengths +rootContainer, with no leftover custom class refs.Runtime impact
None expected. The runtime YAMCS config is the vendored
yamcs/yamcs-data/etc/(passed via--yamcs-config-dir), which already uses the stockorg.yamcs.tctm.cfs.CfsPacketPreprocessorover UDP CCSDS framing — insulated from the rename. The newFprimeFilePacketServicelives only in the package template and is not wired into the vendored config (out of scope for this bump).