최근 패치를 통해서 EN의 일부 API 사용 시, “pending” 키워드를 입력하는 방식이 금지되었습니다.
EN은 블럭을 생성하지 않기 때문에 “pending” 블럭의 개념이 적절하지 않다는 이유입니다.
(단, klay_getTransactionCount와 같이 동일하게 “pending” 키워드를 사용하더라도 “pending” 블럭이 아닌 “pending” nonce를 일컷는 경우는 여전히 사용 가능합니다. 이러한 사용법은 Klaytn Docs를 참조하시면 됩니다.)
링크주신 txops.go 에서는 contract code를 조회하기 위한 client.PendingCodeAt(opts.Context, *contract) 메소드 실행 시 내부적으로 “pending” 블럭을 조회하게 됩니다. 이 메소드 대신 최신 블럭에서 contract code를 조회하는 client.CodeAt(opts.Context, *contract, nil)을 사용하지만 오류없이 작동될 것 같습니다.
(client.PendingNonceAt()를 사용하시는 부분은 위에 언급된 것처럼 “pending” nonce를 조회하는 부분이기에 에러가 발생하지 않을 것입니다.)