mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-06-05 02:33:07 +02:00
This increments the field number of the `Init.makeMining` method and makes the old `makeMining` method return an error, so existing IPC mining clients not using the latest schema file will get an error and not be able to access the Mining interface. Normally, there shouldn't be a need to break compatibility this way, but the mining interface has evolved a lot since it was first introduced, with old clients using the original methods less stable and performant than newer clients. So now is a good time to introduce a cutoff, drop deprecated methods, and stop supporting old clients which can't function as well. Bumping the field number is also an opportunity to make other improvements that would be awkward to implement compatibly, so a few of these were implemented in commits immediately preceding this one. Co-authored-by: Ryan Ofsky <ryan@ofsky.org>
27 lines
934 B
Cap'n Proto
27 lines
934 B
Cap'n Proto
# Copyright (c) 2021-present The Bitcoin Core developers
|
|
# Distributed under the MIT software license, see the accompanying
|
|
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
@0xf2c5cfa319406aa6;
|
|
|
|
using Cxx = import "/capnp/c++.capnp";
|
|
$Cxx.namespace("ipc::capnp::messages");
|
|
|
|
using Proxy = import "/mp/proxy.capnp";
|
|
$Proxy.include("interfaces/echo.h");
|
|
$Proxy.include("interfaces/init.h");
|
|
$Proxy.include("interfaces/mining.h");
|
|
$Proxy.includeTypes("ipc/capnp/init-types.h");
|
|
|
|
using Echo = import "echo.capnp";
|
|
using Mining = import "mining.capnp";
|
|
|
|
interface Init $Proxy.wrap("interfaces::Init") {
|
|
construct @0 (threadMap: Proxy.ThreadMap) -> (threadMap :Proxy.ThreadMap);
|
|
makeEcho @1 (context :Proxy.Context) -> (result :Echo.Echo);
|
|
makeMining @3 (context :Proxy.Context) -> (result :Mining.Mining);
|
|
|
|
# DEPRECATED: no longer supported; server returns an error.
|
|
makeMiningOld2 @2 () -> ();
|
|
}
|