일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- SBT표준
- 러스트 기초 학습
- 러스트기초
- ambiguous function description
- Vue
- 스마트컨트렉트테스트
- 컨트렉트 배포 자동화
- Vue.js
- multicall
- ethers
- rust 기초
- 스마트컨트렉트 예약어 함수이름 중복
- chainlink 설명
- 오블완
- 머신러닝기초
- 컨트렉트 동일한 함수이름 호출
- ethers v6
- ethers typescript
- 프록시배포구조
- 티스토리챌린지
- git rebase
- 스마트 컨트렉트 함수이름 중복
- 체인의정석
- nest.js설명
- 스마트컨트렉트프록시
- 러스트 기초
- 스마트컨트렉트 함수이름 중복 호출
- vue기초
- ethers type
- ethers websocket
- Today
- Total
목록블록체인/Ethers & web3 (59)
체인의정석
새로 작성된 멀티시그의 테스트 코드 커버리지를 100% 까지 올리기 위해서 추가적인 테스트 코드를 작성하였다. 지난번과 다르게 이번엔 숫자형의 배열을 리턴해와서 값을 비교하는 것이 생겼는데 이런 배열의 경우 deep.equal을 사용했던 기억이 있어 비교해 보았다. it("Should return right Function status after submitTransaction is submitted", async () => { expect(await ContractName.fuctionName(input)).to.deep.equal([1]); }) //스마트컨트렉트의 결과 값 : returns (uint256[] memory) 그러나 배열안의 숫자가 Bignumber 형태로 리턴되어서 오류가 났다. A..
한 환경에서 배포를 다양하게 해야할 경우 migration을 사용하여서 배포가 가능하다. https://trufflesuite.com/docs/truffle/reference/truffle-commands/ Truffle Commands - Truffle Suite Truffle Commands This section will describe every command available in the Truffle application. Usage All commands are in the following form: truffle [options] Passing no arguments is equivalent to truffle help, which will display a list of all comm..
가나슈의 경우 UI가 되어 있는 버전도 있지만 CLI에서 사용가능한 버전도 있다고 한다. 특히 최근에는 그냥 기본 rpc test에서 지원이 된다고 한다. https://github.com/trufflesuite/ganache/tree/master GitHub - trufflesuite/ganache: A tool for creating a local blockchain for fast Ethereum development. A tool for creating a local blockchain for fast Ethereum development. - GitHub - trufflesuite/ganache: A tool for creating a local blockchain for fast Ethereu..
이런식으로 작성한 컨트렉트에 대한 UML은 코드로 쉽게 만들 수 있다. 바로 npm link sol2uml --only=production\n sudo npm link sol2uml --only=production\n sol2uml ./ERC721TravelRuleExtension.sol\n 이 순서대로 명령어를 실행하면 된다. sol2uml 명령어는 컨트렉트가 있는 장소로 지정해주어야 해당 장소에 UML이 생성되며 컨트렉트를 직접 지정할 경우 하나의 UML이 나오게 되고 컨트렉트의 최상단 경로에서 사용할 때는 전체 UML 구조가 나오게 된다. 이를 이용해서 산출물을 빠르게 만들 수 있다.
기존 EVM 계열 네트워크는 모두 hardhat + ethers를 사용하였지만 클레이튼의 경우 레퍼런스가 많은 truffle + caver.js를 사용하여서 하기로 하였다. 일단 클레이튼의 경우 evm 계열이지만 지정하는 버전을 맞추어 주어야 사용이 가능하다. 이런 환경 세팅의 경우 공식 문서에 들어가서 체크하고 모두 해당 버전으로 맞춰주어야 한다. 안그럼 나중에 고생한다. https://ko.docs.klaytn.foundation/dapp/sdk/caver-js/getting-started 시작하기 - Klaytn Docs ... ko.docs.klaytn.foundation node 버전 세팅하기 1. nvm 설치하기 curl -o- https://raw.githubusercontent.com/cr..
RPC_URL을 환경변수로 받아오는데 계속해서 마지막에 "/"가 자동 추가되어서 "TypeError: Only absolute URLs are supported" 해당에러가 계속 발생하였다. 이를 해결하기 위해서 서치한 결과 https://thewebdev.info/2022/01/20/how-to-remove-last-segment-from-url-with-javascript/ How to remove last segment from URL with JavaScript? - The Web Dev Spread the love Related Posts How to Remove the Query String from URL with JavaScript?Sometimes, we want to remove the..
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. 지갑에 ..