Skip to content

Move new pilot functions into a compatibility layer so we don't need immediate pro release#1325

Merged
brandur merged 1 commit into
masterfrom
brandur-pilot-compatibility
Jul 23, 2026
Merged

Move new pilot functions into a compatibility layer so we don't need immediate pro release#1325
brandur merged 1 commit into
masterfrom
brandur-pilot-compatibility

Conversation

@brandur

@brandur brandur commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

In #1317 we added some new functions to the pilot to make the active job
rescue system work.

I was thinking this morning that the way this was done is a little
suboptimal for our pro customers. Expanding the pilot interface makes
the pro pilot immediately incompatible, so once we released this we'd
need to make sure to do an immediate fast follow with a pro release,
otherwise there'd be no compatible version. And even with that fast
follow, if a customer tried to upgrade just River by itself, it'd break
their pro version without an upgrade.

Here, move the new functions into a special PilotJobRescuer interface
that's used where available by the rescuer, but allows a fall back in
case it's not. This will let us release the pro side at our leisure and
there will be multiple compatible River releases by then.

We'd want to unwind this eventually, so I left a couple comments in
place with instructions on how to do that.

…immediate pro release

In #1317 we added some new functions to the pilot to make the active job
rescue system work.

I was thinking this morning that the way this was done is a little
suboptimal for our pro customers. Expanding the pilot interface makes
the pro pilot immediately incompatible, so once we released this we'd
need to make sure to do an _immediate_ fast follow with a pro release,
otherwise there'd be no compatible version. And even with that fast
follow, if a customer tried to upgrade just River by itself, it'd break
their pro version without an upgrade.

Here, move the new functions into a special `PilotJobRescuer` interface
that's used where available by the rescuer, but allows a fall back in
case it's not. This will let us release the pro side at our leisure and
there will be multiple compatible River releases by then.

We'd want to unwind this eventually, so I left a couple comments in
place with instructions on how to do that.
@brandur
brandur requested a review from bgentry July 22, 2026 20:19
@brandur

brandur commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

@bgentry Thoughts on this? Seems kind of nice as we won't have to rush as badly to get a Pro PR out.

@bgentry bgentry left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great idea! :shipit:

@brandur

brandur commented Jul 23, 2026

Copy link
Copy Markdown
Contributor Author

Excellent. Thanks!

@brandur
brandur merged commit 3a26035 into master Jul 23, 2026
15 checks passed
@brandur
brandur deleted the brandur-pilot-compatibility branch July 23, 2026 17:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants