From 8d75da1629c8d1c67a192ec3ba1447db7802ec80 Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Fri, 2 Apr 2021 16:12:34 +0200 Subject: [PATCH] Use MessagePrototype for check API Signed-off-by: Jakub Sztandera --- api/api_full.go | 2 +- api/mocks/mock_full.go | 2 +- api/proxy_gen.go | 6 +++--- build/openrpc/full.json.gz | Bin 23192 -> 23212 bytes chain/messagepool/check.go | 20 ++++++++++++++------ cli/multisig.go | 28 ++++++++++++++-------------- cli/services.go | 11 +---------- documentation/en/cli-lotus.md | 8 +++++++- node/impl/full/mpool.go | 4 ++-- 9 files changed, 43 insertions(+), 38 deletions(-) diff --git a/api/api_full.go b/api/api_full.go index e8e8dcb2e..fed9cece5 100644 --- a/api/api_full.go +++ b/api/api_full.go @@ -253,7 +253,7 @@ type FullNode interface { MpoolBatchPushMessage(context.Context, []*types.Message, *MessageSendSpec) ([]*types.SignedMessage, error) //perm:sign // MpoolCheckMessages performs logical checks on a batch of messages - MpoolCheckMessages(context.Context, []*types.Message) ([][]MessageCheckStatus, error) //perm:read + MpoolCheckMessages(context.Context, []*MessagePrototype) ([][]MessageCheckStatus, error) //perm:read // MpoolCheckPendingMessages performs logical checks for all pending messages from a given address MpoolCheckPendingMessages(context.Context, address.Address) ([][]MessageCheckStatus, error) //perm:read // MpoolCheckReplaceMessages performs logical checks on pending messages with replacement diff --git a/api/mocks/mock_full.go b/api/mocks/mock_full.go index a14336537..6feee64f7 100644 --- a/api/mocks/mock_full.go +++ b/api/mocks/mock_full.go @@ -1069,7 +1069,7 @@ func (mr *MockFullNodeMockRecorder) MpoolBatchPushUntrusted(arg0, arg1 interface } // MpoolCheckMessages mocks base method -func (m *MockFullNode) MpoolCheckMessages(arg0 context.Context, arg1 []*types.Message) ([][]api.MessageCheckStatus, error) { +func (m *MockFullNode) MpoolCheckMessages(arg0 context.Context, arg1 []*api.MessagePrototype) ([][]api.MessageCheckStatus, error) { m.ctrl.T.Helper() ret := m.ctrl.Call(m, "MpoolCheckMessages", arg0, arg1) ret0, _ := ret[0].([][]api.MessageCheckStatus) diff --git a/api/proxy_gen.go b/api/proxy_gen.go index f285f1ce6..2d4d41503 100644 --- a/api/proxy_gen.go +++ b/api/proxy_gen.go @@ -235,7 +235,7 @@ type FullNodeStruct struct { MpoolBatchPushUntrusted func(p0 context.Context, p1 []*types.SignedMessage) ([]cid.Cid, error) `perm:"write"` - MpoolCheckMessages func(p0 context.Context, p1 []*types.Message) ([][]MessageCheckStatus, error) `perm:"read"` + MpoolCheckMessages func(p0 context.Context, p1 []*MessagePrototype) ([][]MessageCheckStatus, error) `perm:"read"` MpoolCheckPendingMessages func(p0 context.Context, p1 address.Address) ([][]MessageCheckStatus, error) `perm:"read"` @@ -1515,11 +1515,11 @@ func (s *FullNodeStub) MpoolBatchPushUntrusted(p0 context.Context, p1 []*types.S return *new([]cid.Cid), xerrors.New("method not supported") } -func (s *FullNodeStruct) MpoolCheckMessages(p0 context.Context, p1 []*types.Message) ([][]MessageCheckStatus, error) { +func (s *FullNodeStruct) MpoolCheckMessages(p0 context.Context, p1 []*MessagePrototype) ([][]MessageCheckStatus, error) { return s.Internal.MpoolCheckMessages(p0, p1) } -func (s *FullNodeStub) MpoolCheckMessages(p0 context.Context, p1 []*types.Message) ([][]MessageCheckStatus, error) { +func (s *FullNodeStub) MpoolCheckMessages(p0 context.Context, p1 []*MessagePrototype) ([][]MessageCheckStatus, error) { return *new([][]MessageCheckStatus), xerrors.New("method not supported") } diff --git a/build/openrpc/full.json.gz b/build/openrpc/full.json.gz index cb781bec9169de220365f7d8cfbac0850a948f70..d628685e57299f0100424b40692559317a058007 100644 GIT binary patch delta 22540 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 delta 22540 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∓_Ll)(Lu^CHRc+S#AeRy(7V#7w# zHreWOt>`%C5TA8ey6CcT3O;ycv7>mV;yW9;8iER>1OVd%bFznM^sbi(_MnRh-emz@ zQ=lQpw>TlZQCrt-pg**)kwTWwKw%!O?PMeeyHZ@YtXYxLn_1Bqil?yd$?Yncl+#q- zJlEOG4~TXT)YWndTzuA_SgS2sv>fiyhosZgvb=u8)zj#R-WRG7Fe|0~`%{aa#B*1r6{Jj27u&#m|}Z&BXyag~ypMXC6Y;%YAD zY^sN={bhdyvbZ!2U{j=t&C@SleSTJx+w;#H?yh z4q?3^6ba@5D;WhS?@vd;k=A17TI5m`S8TFF$ns8wHFSU#k^?kABot#EF?t-%>80#@ zt`#c3@rVaREu`Fa(v^%J{OC!crWLIc$@?>mRZ23%T`R1Wt|=29 zyKA#$2ft@tdH`ywyVGXbG1B4%I%}`urUIz+b8y|Yx8=GSi_jHOv$}JjOS%HiBTcyP z4T>QBE`%BeqjCXLr8cM$2I|xGW^f6usa6KbbXP+I?H$3&h`5OsZB}$Rn52 z+MS}a76x8Ah>dlsVrqCrRVJlV33*nDRW3x(o@`$1hdJ5xgMAoBu!B$DX~c*qZhqA; zfJ>(%XA_pr`5#kB;tMQnE_W}BM_q1jFxC!VO;W0PYVURCNMs8!U(!FWWEM9Xn)w6y zqEtw?_2+&25`UgM*kJ3v$hTZwjkSZjA0m*-dP_CFxS@`ce+Zu}mju_ckm_}x_Dd^7 z{5&~%WysJ#UsxwCrcAsLmrYGuhwsJ_bE1U{)$)|et1~Kn#g9du%h?I}sy?8t<=xSC z-O^+EJ5Ada+D4b62xbFv|CS}^vd&IX%->|s1GmtAILqX^dY=C`nAi4PREpJ zFdvL@EO^cI^H(FOl2!B$PIlFM@f_`ddV*WCLF_>+I)p*RUt3=tzTBmeA67cKf5Ml@ zfWiD5SyaqaETdr_53P8=$$owcU^+on`MOIwR1d5@TFwi7n5A$0V%!Q^w)xi|y9V{@ ziAZw5`NXjk^`&ZyPQyDRM!4NzzIp2+A`G^u?lfuD9Y|a3*kN$r=`QJ6HK85o>=31M zGYygEXK17iEn7w43H7@%AN0~KzF=+v91w+CABELl~#l_IJ<^|7DcHymMa(L@tH@lLSL*X4B6 z^fqE;t};Ai>U!9NZfb>U*+HljF*ic0qNJn)u=)BQDm~xr^Qxa4fGzI@Qemuf34xo) zUn`@L++V0Y{MBE)l07=UZr8m&eO~+GWMa~F#Yypoq;z-mXdzB+|7!PF>7=Xk@0Y-fZaL%V-*Gxd<^7ef)Y_wCJh^-nk@`z>9QX(Jxzzy)1iiIVh(x} zdd;pwYzXl>&2Wo?IiFo|UZ+}SBbwOR2ZL%O{bVEu(9opq`yMoE2x0bdzuS!JQEHFkeDHG2!TrYJVXt!rxS& zrt;0g!Pb@(MgM1~Ue0G!<()=J@>Ek}KMz6w!7w;Yo@a?y0;gNb`@j#e%Ln8ABV?I! zhn|e}1*ROJd5F`yU@?z7qm>BD4dE%?I2q=Z8@%)1TKFfQQ?&v2ljA+JuMPy2O3H?| zaEAZSrs((3^xd_ztNoayc-hOV++k-@gu+Uuz}ZiIXSI~6aUp$w^H=eq94)MKe=+bA z3RY9af%tpntr=?3pdfjujdm(X?}6lXyPfo_b;kA+#YeO{v0-X$zTX(!)btoms#@4dnzsVv}v0c`9c?k1joS5S-`G78V{=pF=jv!|hamu?FdfV3Nt6g%-ZEtES zjaLHM)xQ(Vl>uWC_?x(T9