Repository navigation
Deprecate releasing a channel that isn't detached (RTS4b) - #2314
SimonWoolf wants to merge 1 commit into
Conversation
Spec 6.3.0 deletes RTS4a, under which release detaches a channel before removing it, and replaces it with RTS4e, under which release fails with error 90011 for a channel not in the INITIALIZED, DETACHED or FAILED state. RTS4b lets SDKs that already implement the old behaviour keep it until their next major version, provided they log a deprecation warning each time it takes effect. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (3)
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review. Walkthrough
ChangesChannel release behavior
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Other Merge Risk: ⚪ Minimal · up to No merge-blocking issue is identified; the release deprecation warning is ready for normal merge checks. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)✅ Passed checks (4 passed)Full details: Docstring CoverageExplanation Docstring coverage is 66.67% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 3 functions across 2 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
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. A rabbit checks the channel state, Comment |
Implements RTS4b from spec 6.3.0 (ably/specification#557). Calling
channels.release(name)on a realtime channel that isn't INITIALIZED, DETACHED or FAILED still detaches it and then removes it. It now also logs a warning that this is deprecated and will be an error in the next major version, and that you should callchannel.detach()and wait for it to complete before releasing. Thereleasedocstring is updated to match.Tests check that releasing an attached channel logs the warning and that releasing a detached channel doesn't.
The next-major change is in #2315. Reference ably-js PRs: ably/ably-pubsub-js#2322 (deprecation) and ably/ably-pubsub-js#2323 (next major).
🤖 Generated with Claude Code
Summary by CodeRabbit