일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- git rebase
- ethers typescript
- redux toolkit 설명
- 러스트기초
- 러스트 기초 학습
- ethers websocket
- 스마트컨트렉트 함수이름 중복 호출
- 스마트컨트렉트 예약어 함수이름 중복
- cloud hsm 사용하기
- Vue.js
- cloud hsm 서명
- erc4337
- erc4337 contract
- ambiguous function description
- 머신러닝기초
- 스마트 컨트렉트 함수이름 중복
- redux 기초
- 체인의정석
- 오블완
- rust 기초
- vue기초
- 컨트렉트 동일한 함수이름 호출
- 계정추상화
- 러스트 기초
- 티스토리챌린지
- Vue
- cloud hsm
- ethers v6
- ethers type
- SBT표준
- Today
- Total
목록전체 글 (527)
체인의정석
현재 컨트렉트 배포 및 운영함수의 경우 env파일을 이용하여 각각 커멘드라인을 입력하는 식으로 문서가 정리되어 있어 이를 inquirer라는 것을 이용해서 명령어 콘솔에서 한번 실행만 하면 프로그램이 실행되어 사람이 수동으로 체크하고 넘기면 복잡한 배포가 완료되는 식으로 수정을 하게되었다. 먼저 사용할 모듈은 #inquirer 이다. https://www.npmjs.com/package/inquirer inquirer A collection of common interactive command line user interfaces.. Latest version: 8.2.2, last published: a month ago. Start using inquirer in your project by runn..
현재 hardhat + ether.js에서 인터널 트랜잭션에 대한 이벤트 로그 테스트가 이루어지고 있지 않은 상황이다. 완벽한 단위 테스트를 위하여서 인터널 트랜잭션에 대한 이벤트 로그를 업데이트 하기로 하였다. https://ethereum.stackexchange.com/questions/71785/how-to-test-events-that-were-sent-by-inner-transaction-delegate-call How to test events that were sent by inner transaction / delegate call? Usually, using truffle I can check for events like this: let { logs } = await myContrac..
https://forum.klaytn.com/t/hardhat-config/3965/14 Hardhat.config 설정 값 문의 @moomin 잘 해결되셨다니 다행입니다 🙂 다른 분들도 참고하실 수 있게끔 코드와 함께 문제 해결 사례를 공유해주셔서 감사합니다. 말씀하신 것처럼 현재 Cypress 또한 Baobab과 동일한 GasPrice가 적용 forum.klaytn.com 2년전 클레이튼 환경에서 사용할 때는 배포용 스크립트를 따로 짜서 solc를 써서 배포를 하였었다. 하지만 지금은 공식 문서에서는 지원은 안하지만 클레이튼 개발자 포럼을 살펴보니 hardhat을 사용할 수 있는 것 같다. 처음에는 이더리움과 다른 모양을 많이 넣었다고 느꼈지만 요즘 발표하는 사항들을 보면 이더리움과의 호환성을 높이려..
각 체인별 체크 1. Chain ID를 체크한다. 2. URC_URL을 체크한다. 3. test 환경인지 dev환경인지 prd 환경인지 체크한다. 컨트렉트 관련 체크 1. 상호작용 하는 컨트렉트 주소가 해당 체인의 주소가 맞는지 체크한다. 2. 각 컨트렉트의 관리자 권한을 체크한다. 3. 체인간 중간에 사인하는 주체가 있다면 해당 주체가 맞는지 체크한다. 4. 발행하는 테스트 자산의 이름, 심볼 , URI 등이 해당 체인의 정보값이 맞는지 체크한다. 5. 컨트렉트간의 연결이 잘 이루어져있는지 체크한다. 6. 실행하는 체인 환경에 따라서 가스비를 지정해주어야 하는지, 달라지는 gas limit이 없는지 체크한다. 지갑 주소 관련 체크 1. 각 체인별로 실행에 필요한 잔고가 충분한지 체크한다. 2. 지갑에 ..
스마트컨트렉트에 있어서 자동으로 배포해주고 설정해주는 스크립트를 짜는 것은 중요하다. 이번 프로젝트에서는 여러 상황에 따라 여러 종류의 스크립트를 사용하였는데 1. env 파일을 사용하는방법 .env 파일을 만든 후에 process.env.환경변수 를 이용하여서 스크립트를 사용한다. 나중에 리눅스 커멘드로 운영할때도 편리한 방법이다. 다만 계속해서 변수가 바뀔 경우 환경변수로 하기에는 복잡한 한계가 존재한다. 2. 변수를 모듈로 빼서 정의 후 사용하는 방법 export const를 사용하여 따로 하나의 변수 파일에 정의한 후 import 해와서 해당 변수를 파악한다. ethers.js를 사용하면 둘 다 쉽게 쓸 수 있지만 현재 상황은 여러 체인의 여러 환경 (dev,prd,test) 등을 같이 관리해야 ..

실제 프로덕트를 배포할 단계가 오면서 가스비에 대한 산정을 해야 하는 단계에 이르렀다. 일단 먼저 usedGas를 사용하기로 하였다. 개발자 단톡방에 물어봐서 조언을 얻은 결과 1. estimateGas 로 고정 가스비 계산 ( 이 경우는 이더스캔에서 확실하게 확인하였다.) 2. eth_gasPrice API 결과로 얻은 gasPrice 두 값을 곱해서 결제를 올리면 된다는 추천을 받았다. 다만, gasPrice의 값은 네트워크 상황에 따라 달라질 수 있으며, 변동값인건 어쩔 수 없으므로 보수적으로 넉넉히 받을것 또한 고정된 가스비보다 3만 정도를 더 포함시킬 것이 유의사항이다. 3만을 포함시키는 이유는 측정값보다 더 적게 나올 가능성이 있기 때문이며, 사용안된 가스는 반환되므로 큰 상관이 없다. 그리고..
npx hardhat coverage http://www.correccionesweb.com.ar/hardhat_vue/plugins/solidity-coverage.html Ethereum development environment for professionals by Nomic Labs Compile, deploy, test and debug your Ethereum software. Get Solidity stack traces, console.log, mainnet forking and more. www.correccionesweb.com.ar 솔리디티의 테스트 코드 커버리지를 구해야하 하는 상황이다. 일단 이더리움 체인이 아니라서 테스트코드에서 가스비를 지정해주는 부분이 있었는데, 이렇게 가스비..
내일 테스트 환경 배포를 앞두고 최종적으로 관리자 권한 세팅을 수정하다가. Owner를 바꿀때 Pauser나 Signer를 바꾸는 부분을 발견하였다. 이를 테스트하기위해 관리자를 계속해서 바꾸면서 잘못된 관리자도 넣어봤는데 실행이 되고 넘어가고 이상한 곳에서 에러가 났다. 몇시간을 봐도 에러를 찾을 수 없었고 아무리 고민해봐도 답이 안보였다. 하지만 스마트컨트렉트가 잘못될 경우 물어볼 곳 같은건 존재하지 않는다 ㅠㅠ 그래서 일단 배포하고 나서 같은 상황을 만든 후 tenderly를 사용해서 오류의 정확한 원인을 찾아야겠다는 결론에 너무 귀찮았지만 실제로 배포후 테스트해보니 에러가 안났다. 그 이후 테스트 코드에 잘못된 관리자가 보낼 때 예외 처리를 마무리 시키니 오류가 잡히고 정상작동 하였다. Signe..