Compare commits

..

25 Commits

Author SHA1 Message Date
static 514d58ebc8 troubleshooting engine_test issues 12 months ago
static 8fc39df5d9 fix config.go conflict 12 months ago
static ad438fd5dc Merge branch 'dev' into feature/clear-stale-staking-data 12 months ago
Diego Nava 5215f6d0d1
lint issues 12 months ago
Diego Nava 652d2b7c9c
lint issues 12 months ago
Diego Nava 09080397b4
merge dev 12 months ago
static e28505f237 Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static 910a09dbcf Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static 5c512f62ed Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static 76f0ef6974 Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static 5a1bc7a226 Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static 1b3b181b09 fix merge conflict 1 year ago
static 7262b56567 Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static 3d7a9318d1 update leader rotation configs 1 year ago
static 61cbbdd152 Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static 912aeb6a50 Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static 3687575bcd fix merge conflict and syncing with dev 1 year ago
static 801716261d fix merge conflict 1 year ago
static 1954fa8295 fix merge conflicts 1 year ago
static 0a52b14af1 Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static 2ff63764c5 update statedb, reward:AccumulateRewardsAndCountSigs 1 year ago
static 3dce4b7058 update statedb, reward:AccumulateRewardsAndCountSigs 1 year ago
static d9cb44aaa0 add engine_test 1 year ago
Casey Gardiner 90e71609e0
Merge branch 'dev' into feature/clear-stale-staking-data 1 year ago
static fd2890e4d6 Port over old clear stale stake data commits from stale PR (buildable) 1 year ago
  1. 28
      .github/ISSUE_TEMPLATE/bounty.md
  2. 12
      .github/workflows/build-docker-proto-image.yaml
  3. 170
      .github/workflows/ci-tag.yaml
  4. 170
      .github/workflows/ci.yaml
  5. 10
      .gitignore
  6. 1
      .hmy/02c8ff0b88f313717bc3a627d2f8bb172ba3ad3bb9ba3ecb8eed4b7c878653d3d4faf769876c528b73f343967f74a917.key
  7. 1
      .hmy/16513c487a6bb76f37219f3c2927a4f281f9dd3fd6ed2e3a64e500de6545cf391dd973cc228d24f9bd01efe94912e714.key
  8. 1
      .hmy/1c1fb28d2de96e82c3d9b4917eb54412517e2763112a3164862a6ed627ac62e87ce274bb4ea36e6a61fb66a15c263a06.key
  9. 1
      .hmy/2d3d4347c5a7398fbfa74e01514f9d0fcd98606ea7d245d9c7cfc011d472c2edc36c738b78bd115dda9d25533ddfe301.key
  10. 1
      .hmy/2d61379e44a772e5757e27ee2b3874254f56073e6bd226eb8b160371cc3c18b8c4977bd3dcb71fd57dc62bf0e143fd08.key
  11. 1
      .hmy/40379eed79ed82bebfb4310894fd33b6a3f8413a78dc4d43b98d0adc9ef69f3285df05eaab9f2ce5f7227f8cb920e809.key
  12. 1
      .hmy/4235d4ae2219093632c61db4f71ff0c32bdb56463845f8477c2086af1fe643194d3709575707148cad4f835f2fc4ea05.key
  13. 1
      .hmy/49d15743b36334399f9985feb0753430a2b287b2d68b84495bbb15381854cbf01bca9d1d9f4c9c8f18509b2bfa6bd40f.key
  14. 1
      .hmy/52ecce5f64db21cbe374c9268188f5d2cdd5bec1a3112276a350349860e35fb81f8cfe447a311e0550d961cf25cb988d.key
  15. 1
      .hmy/576d3c48294e00d6be4a22b07b66a870ddee03052fe48a5abbd180222e5d5a1f8946a78d55b025de21635fd743bbad90.key
  16. 1
      .hmy/63f479f249c59f0486fda8caa2ffb247209489dae009dfde6144ff38c370230963d360dffd318cfb26c213320e89a512.key
  17. 1
      .hmy/65f55eb3052f9e9f632b2923be594ba77c55543f5c58ee1454b9cfd658d25e06373b0f7d42a19c84768139ea294f6204.key
  18. 1
      .hmy/678ec9670899bf6af85b877058bea4fc1301a5a3a376987e826e3ca150b80e3eaadffedad0fedfa111576fa76ded980c.key
  19. 1
      .hmy/68ae289d73332872ec8d04ac256ca0f5453c88ad392730c5741b6055bc3ec3d086ab03637713a29f459177aaa8340615.key
  20. 1
      .hmy/776f3b8704f4e1092a302a60e84f81e476c212d6f458092b696df420ea19ff84a6179e8e23d090b9297dc041600bc100.key
  21. 1
      .hmy/86dc2fdc2ceec18f6923b99fd86a68405c132e1005cf1df72dca75db0adfaeb53d201d66af37916d61f079f34f21fb96.key
  22. 1
      .hmy/95117937cd8c09acd2dfae847d74041a67834ea88662a7cbed1e170350bc329e53db151e5a0ef3e712e35287ae954818.key
  23. 1
      .hmy/a547a9bf6fdde4f4934cde21473748861a3cc0fe8bbb5e57225a29f483b05b72531f002f8187675743d819c955a86100.key
  24. 1
      .hmy/b179c4fdc0bee7bd0b6698b792837dd13404d3f985b59d4a9b1cd0641a76651e271518b61abbb6fbebd4acf963358604.key
  25. 0
      .hmy/blacklist.txt
  26. 0
      .hmy/blspass.txt
  27. 1
      .hmy/c4e4708b6cf2a2ceeb59981677e9821eebafc5cf483fb5364a28fa604cc0ce69beeed40f3f03815c9e196fdaec5f1097.key
  28. 1
      .hmy/ca86e551ee42adaaa6477322d7db869d3e203c00d7b86c82ebee629ad79cb6d57b8f3db28336778ec2180e56a8e07296.key
  29. 1
      .hmy/e751ec995defe4931273aaebcb2cd14bf37e629c554a57d3f334c37881a34a6188a93e76113c55ef3481da23b7d7ab09.key
  30. 1
      .hmy/eca09c1808b729ca56f1b5a6a287c6e1c3ae09e29ccf7efa35453471fcab07d9f73cee249e2b91f5ee44eb9618be3904.key
  31. 1
      .hmy/ee2474f93cba9241562efc7475ac2721ab0899edf8f7f115a656c0c1f9ef8203add678064878d174bb478fa2e6630502.key
  32. 0
      .hmy/extbls/4f41a37a3a8d0695dd6edcc58142c6b7d98e74da5c90e79b587b3b960b6a4f5e048e6d8b8a000d77a478d44cd640270c.key
  33. 0
      .hmy/extbls/4f41a37a3a8d0695dd6edcc58142c6b7d98e74da5c90e79b587b3b960b6a4f5e048e6d8b8a000d77a478d44cd640270c.pass
  34. 0
      .hmy/extbls/5a18d4aa3e6aff4835f07588ae66be19684476d38799f63e54c6b5732fad1e86dce7458b1c295404fb54a0d61e50bb97.key
  35. 0
      .hmy/extbls/5a18d4aa3e6aff4835f07588ae66be19684476d38799f63e54c6b5732fad1e86dce7458b1c295404fb54a0d61e50bb97.pass
  36. 0
      .hmy/extbls/7dcc035a943e29e17959dabe636efad7303d2c6f273ace457ba9dcc2fd19d3f37e70ba1cd8d082cf8ff7be2f861db48c.key
  37. 0
      .hmy/extbls/7dcc035a943e29e17959dabe636efad7303d2c6f273ace457ba9dcc2fd19d3f37e70ba1cd8d082cf8ff7be2f861db48c.pass
  38. 0
      .hmy/extbls/81296eedba05047594385e3086e1dab52c9eb9e56f46d86f58447cccc20535d646120171961d74968d27a2ec0f8af285.key
  39. 0
      .hmy/extbls/81296eedba05047594385e3086e1dab52c9eb9e56f46d86f58447cccc20535d646120171961d74968d27a2ec0f8af285.pass
  40. 0
      .hmy/extbls/89eab762e7364d6cf89f7a6c54da794f74eba2e29147992ac66adcef0f0654ef8a727710ee55ad8b532da0dd87811915.key
  41. 0
      .hmy/extbls/89eab762e7364d6cf89f7a6c54da794f74eba2e29147992ac66adcef0f0654ef8a727710ee55ad8b532da0dd87811915.pass
  42. 0
      .hmy/extbls/b0917378b179a519a5055259c4f8980cce37d58af300b00dd98b07076d3d9a3b16c4a55f84522f553872225a7b1efc0c.key
  43. 0
      .hmy/extbls/b0917378b179a519a5055259c4f8980cce37d58af300b00dd98b07076d3d9a3b16c4a55f84522f553872225a7b1efc0c.pass
  44. 0
      .hmy/extkeystore/one17ughrllgnzx9sfa46p568k8rdmtz7qj85slc6t.key
  45. 0
      .hmy/extkeystore/one19aw2wcr5y4lxeuwt0ajgt5aw3a3qkjdgg67ygj.key
  46. 0
      .hmy/extkeystore/one19zzwsxr0uf2fe34y8qkadek2v0eh6h5mg2deg6.key
  47. 0
      .hmy/extkeystore/one1auqndgthqu5lznsn7tuma8s5333cq0y07cwc6x.key
  48. 0
      .hmy/extkeystore/one1eenp9ujcrmyaq22ef6jrpry2k97tjz4xs6ppcf.key
  49. 0
      .hmy/extkeystore/one1lctumupg2y009pjmnhnmn4nqjk0zf0dspjanf7.key
  50. 1
      .hmy/f47238daef97d60deedbde5302d05dea5de67608f11f406576e363661f7dcbc4a1385948549b31a6c70f6fde8a391486.key
  51. 1
      .hmy/fc4b9c535ee91f015efff3f32fbb9d32cdd9bfc8a837bb3eee89b8fff653c7af2050a4e147ebe5c7233dc2d5df06ee0a.key
  52. 0
      .hmy/keystore/one103q7qe5t2505lypvltkqtddaef5tzfxwsse4z7.key
  53. 0
      .hmy/keystore/one129r9pj3sk0re76f7zs3qz92rggmdgjhtwge62k.key
  54. 0
      .hmy/keystore/one12fuf7x9rgtdgqg7vgq0962c556m3p7afsxgvll.key
  55. 0
      .hmy/keystore/one1658znfwf40epvy7e46cqrmzyy54h4n0qa73nep.key
  56. 0
      .hmy/keystore/one16qsd5ant9v94jrs89mruzx62h7ekcfxmduh2rx.key
  57. 0
      .hmy/keystore/one1a0x3d6xpmr6f8wsyaxd9v36pytvp48zckswvv9.key
  58. 0
      .hmy/keystore/one1a50tun737ulcvwy0yvve0pvu5skq0kjargvhwe.key
  59. 0
      .hmy/keystore/one1d2rngmem4x2c6zxsjjz29dlah0jzkr0k2n88wc.key
  60. 0
      .hmy/keystore/one1d7jfnr6yraxnrycgaemyktkmhmajhp8kl0yahv.key
  61. 0
      .hmy/keystore/one1est2gxcvavmtnzc7mhd73gzadm3xxcv5zczdtw.key
  62. 0
      .hmy/keystore/one1ghkz3frhske7emk79p7v2afmj4a5t0kmjyt4s5.key
  63. 0
      .hmy/keystore/one1ljznytjyn269azvszjlcqvpcj6hjm822yrcp2e.key
  64. 0
      .hmy/keystore/one1m6m0ll3q7ljdqgmth2t5j7dfe6stykucpj2nr5.key
  65. 0
      .hmy/keystore/one1p7ht2d4kl8ve7a8jxw746yfnx4wnfxtp8jqxwe.key
  66. 0
      .hmy/keystore/one1pdv9lrdwl0rg5vglh4xtyrv3wjk3wsqket7zxy.key
  67. 0
      .hmy/keystore/one1pf75h0t4am90z8uv3y0dgunfqp4lj8wr3t5rsp.key
  68. 0
      .hmy/keystore/one1r4zyyjqrulf935a479sgqlpa78kz7zlcg2jfen.key
  69. 0
      .hmy/keystore/one1spshr72utf6rwxseaz339j09ed8p6f8ke370zj.key
  70. 0
      .hmy/keystore/one1uyshu2jgv8w465yc8kkny36thlt2wvel89tcmg.key
  71. 0
      .hmy/keystore/one1z05g55zamqzfw9qs432n33gycdmyvs38xjemyl.key
  72. 0
      .hmy/locals.txt
  73. 0
      .hmy/pgp_keys.asc
  74. 0
      .hmy/rosetta_local_fix.csv
  75. 0
      .hmy/wallet.ini
  76. 2
      .rpmmacros
  77. 16
      .travis.yml
  78. 2
      BLACKLIST.md
  79. 2
      CODE_OF_CONDUCT.md
  80. 6
      CONTRIBUTING.md
  81. 34
      Dockerfile
  82. 4
      FLA.md
  83. 58
      Makefile
  84. 75
      README.md
  85. 2
      SECURITY.md
  86. 2
      accounts/abi/abi_test.go
  87. 8
      accounts/abi/bind/auth.go
  88. 2
      accounts/abi/bind/backend.go
  89. 4
      accounts/abi/bind/base.go
  90. 6
      accounts/abi/bind/base_test.go
  91. 2
      accounts/abi/bind/bind.go
  92. 2
      accounts/abi/bind/template.go
  93. 2
      accounts/abi/bind/topics.go
  94. 2
      accounts/abi/bind/topics_test.go
  95. 2
      accounts/abi/bind/util.go
  96. 2
      accounts/abi/pack.go
  97. 2
      accounts/accounts.go
  98. 6
      accounts/address.go
  99. 6
      accounts/external/backend.go
  100. 6
      accounts/keystore/account_cache.go
  101. Some files were not shown because too many files have changed in this diff Show More

@ -0,0 +1,28 @@
---
name: Bounty
about: Bounty ticket for Harmony
title: "[Bounty]"
labels: help wanted
assignees: ''
---
# About The Bounty
https://github.com/harmony-one/harmony-open/blob/master/README.md
# Category
- [ ] bug
- [ ] feature
- [ ] document
- [ ] dApp
- [ ] test
# Description
# T-shirt Size
<!-- XS, S, M, L, XL, XXL -->
# Time Estimation
# Explore All Bounties
https://gitcoin.co/profile/harmony-one

@ -1,4 +1,4 @@
name: Build and Push woop proto Docker Image
name: Build and Push harmony proto Docker Image
on:
workflow_dispatch:
@ -8,10 +8,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout woop core code
- name: Checkout harmony core code
uses: actions/checkout@v3
with:
path: woop
path: harmony
ref: ${{ github.ref }}
fetch-depth: 0
@ -27,9 +27,9 @@ jobs:
- name: Build and push
uses: docker/build-push-action@v3
with:
context: ./woop/api/service/legacysync/downloader
file: ./woop/api/service/legacysync/downloader/Proto.Dockerfile
context: ./harmony/api/service/legacysync/downloader
file: ./harmony/api/service/legacysync/downloader/Proto.Dockerfile
push: true
platforms: linux/amd64,linux/arm64
tags: |
woopchain/woop-proto:latest
harmonyone/harmony-proto:latest

@ -1,4 +1,4 @@
name: Manual release woop (need tag)
name: Manual release harmony (need tag)
on:
workflow_dispatch:
@ -16,10 +16,10 @@ jobs:
tag_annotated: ${{ steps.check-tag-annotated.outputs.tag_annotated }}
steps:
- name: Checkout woop core code
- name: Checkout harmony core code
uses: actions/checkout@v3
with:
path: woop
path: harmony
ref: ${{ github.event.inputs.tag }}
fetch-depth: 0
@ -33,10 +33,10 @@ jobs:
else
echo "::set-output name=tag_annotated::false"
fi
working-directory: woop
working-directory: harmony
build:
name: Build woop binary
name: Build harmony binary
needs: check
runs-on: ${{ matrix.os }}
if: needs.check.outputs.tag_annotated == 'true'
@ -55,26 +55,26 @@ jobs:
- name: Checkout dependence repo
uses: actions/checkout@v3
with:
repository: woop-chain/mcl
repository: harmony-one/mcl
path: mcl
- name: Checkout dependence repo
uses: actions/checkout@v3
with:
repository: woop-chain/bls
repository: harmony-one/bls
path: bls
- name: Checkout woop core code
- name: Checkout harmony core code
uses: actions/checkout@v3
with:
path: woop
path: harmony
ref: ${{ github.event.inputs.tag }}
fetch-depth: 0
- name: Set up Go go.mod
uses: actions/setup-go@v3
with:
go-version-file: 'woop/go.mod'
go-version-file: 'harmony/go.mod'
- name: Get latest version and release
run: |
@ -82,28 +82,28 @@ jobs:
RELEASE=$(git describe --long | cut -f2 -d-)
echo "build_version=$VERSION" >> $GITHUB_ENV
echo "build_release=$RELEASE" >> $GITHUB_ENV
working-directory: woop
working-directory: harmony
- name: Build woop binary and packages for Linux
- name: Build harmony binary and packages for Linux
if: matrix.os == 'ubuntu-22.04'
run: |
make linux_static
make deb
echo %_signature gpg >> $HOME/.rpmmacros && echo "%_gpg_name Woop (wikiwoop.com)" >> $HOME/.rpmmacros
echo %_signature gpg >> $HOME/.rpmmacros && echo "%_gpg_name Harmony (harmony.one)" >> $HOME/.rpmmacros
make rpm
mv ./bin/woop ./bin/woop-amd64
mv $HOME/debbuild/woop-$build_version-$build_release.deb ./bin/
mv $HOME/rpmbuild/RPMS/x86_64/woop-$build_version-$build_release.x86_64.rpm ./bin/
working-directory: woop
mv ./bin/harmony ./bin/harmony-amd64
mv $HOME/debbuild/harmony-$build_version-$build_release.deb ./bin/
mv $HOME/rpmbuild/RPMS/x86_64/harmony-$build_version-$build_release.x86_64.rpm ./bin/
working-directory: harmony
- name: Build woop binary and packages for Linux on ARM64
- name: Build harmony binary and packages for Linux on ARM64
if: join(matrix.os, '-') == 'self-hosted-linux-ARM64'
run: |
make linux_static
mv ./bin/woop ./bin/woop-arm64
working-directory: woop
mv ./bin/harmony ./bin/harmony-arm64
working-directory: harmony
- name: Build woop binary and packages for MacOS
- name: Build harmony binary and packages for MacOS
if: matrix.os == 'macos-12'
run: |
brew install bash
@ -111,29 +111,29 @@ jobs:
sudo ln -sf /usr/local/opt/openssl@1.1 /usr/local/opt/openssl
make
cd ./bin && mkdir ./lib && mv ./*.dylib ./lib && rm -f ./bootnode
gpg --detach-sign woop
zip -qr ./woop-macos.zip ./*
rm -rf `ls * | egrep -v woop-macos.zip`
working-directory: woop
gpg --detach-sign harmony
zip -qr ./harmony-macos.zip ./*
rm -rf `ls * | egrep -v harmony-macos.zip`
working-directory: harmony
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: woop
path: woop/bin/*
name: harmony
path: harmony/bin/*
retention-days: 1
docker-build:
name: Build and push woop docker image
name: Build and push harmony docker image
needs: [check, build]
runs-on: ubuntu-22.04
if: needs.check.outputs.tag_annotated == 'true'
steps:
- name: Checkout woop core code
- name: Checkout harmony core code
uses: actions/checkout@v3
with:
path: woop
path: harmony
ref: ${{ github.event.inputs.tag }}
fetch-depth: 0
@ -143,17 +143,17 @@ jobs:
RELEASE=$(git describe --long | cut -f2 -d-)
echo "build_version=$VERSION" >> $GITHUB_ENV
echo "build_release=$RELEASE" >> $GITHUB_ENV
working-directory: woop
working-directory: harmony
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: woop
name: harmony
- name: Build preview works
run: |
mv $GITHUB_WORKSPACE/woop-amd64 ./scripts/docker/woop
working-directory: woop
mv $GITHUB_WORKSPACE/harmony-amd64 ./scripts/docker/harmony
working-directory: harmony
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
@ -167,12 +167,12 @@ jobs:
- name: Build and push
uses: docker/build-push-action@v3
with:
context: ./woop/scripts/docker
file: ./woop/scripts/docker/Dockerfile
context: ./harmony/scripts/docker
file: ./harmony/scripts/docker/Dockerfile
push: true
tags: |
woopchain/woop:${{ github.event.inputs.tag }}
woopchain/woop:${{ env.build_version }}-${{ env.build_release }}
harmonyone/harmony:${{ github.event.inputs.tag }}
harmonyone/harmony:${{ env.build_version }}-${{ env.build_release }}
release-page:
name: Sign binary and create and publish release page
@ -187,10 +187,10 @@ jobs:
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
passphrase: ${{ secrets.GPG_PRIVATE_KEY_PASS }}
- name: Checkout woop core code
- name: Checkout harmony core code
uses: actions/checkout@v3
with:
path: woop
path: harmony
ref: ${{ github.event.inputs.tag }}
fetch-depth: 0
@ -202,26 +202,26 @@ jobs:
echo "build_version=$VERSION" >> $GITHUB_ENV
echo "build_version_long=$VERSION_LONG" >> $GITHUB_ENV
echo "build_release=$RELEASE" >> $GITHUB_ENV
working-directory: woop
working-directory: harmony
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: woop
name: harmony
- name: Signed amd64 woop binary
- name: Signed amd64 harmony binary
run: |
gpg --detach-sign woop-amd64
sha256sum woop-amd64 >> woop-amd64.sha256
gpg --detach-sign harmony-amd64
sha256sum harmony-amd64 >> harmony-amd64.sha256
- name: Signed arm64 woop binary
- name: Signed arm64 harmony binary
run: |
gpg --detach-sign woop-arm64
sha256sum woop-arm64 >> woop-arm64.sha256
gpg --detach-sign harmony-arm64
sha256sum harmony-arm64 >> harmony-arm64.sha256
- name: Signed amd64 woop binary
- name: Signed amd64 harmony binary
run: |
shasum -a 256 woop-macos.zip >> woop-macos.zip.sha256
shasum -a 256 harmony-macos.zip >> harmony-macos.zip.sha256
- name: Get tag message
env:
@ -230,7 +230,7 @@ jobs:
touch ./tag_message.md
TAG_MESSAGE=$(git cat-file tag v$build_version | tail -n+6)
echo -e "$TAG_MESSAGE\n\nThe released version: $build_version_long" >> ./tag_message.md
working-directory: woop
working-directory: harmony
- name: Create Release
id: create_release
@ -242,114 +242,114 @@ jobs:
release_name: Mainnet Release ${{ env.build_version }}
draft: true
prerelease: false
body_path: ./woop/tag_message.md
body_path: ./harmony/tag_message.md
- name: Upload woop binary for Linux
- name: Upload harmony binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-amd64
asset_name: woop
asset_path: ./harmony-amd64
asset_name: harmony
asset_content_type: application/octet-stream
- name: Upload woop deb package for Linux
- name: Upload harmony deb package for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-${{ env.build_version }}-${{ env.build_release }}.deb
asset_name: woop-${{ env.build_version }}.deb
asset_path: ./harmony-${{ env.build_version }}-${{ env.build_release }}.deb
asset_name: harmony-${{ env.build_version }}.deb
asset_content_type: application/x-deb
- name: Upload woop rpm package for Linux
- name: Upload harmony rpm package for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-${{ env.build_version }}-${{ env.build_release }}.x86_64.rpm
asset_name: woop-${{ env.build_version }}.x86_64.rpm
asset_path: ./harmony-${{ env.build_version }}-${{ env.build_release }}.x86_64.rpm
asset_name: harmony-${{ env.build_version }}.x86_64.rpm
asset_content_type: application/x-rpm
- name: Upload woop amd64 binary for Linux
- name: Upload harmony amd64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-amd64
asset_name: woop-amd64
asset_path: ./harmony-amd64
asset_name: harmony-amd64
asset_content_type: application/octet-stream
- name: Upload sha256 signature of woop amd64 binary for Linux
- name: Upload sha256 signature of harmony amd64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-amd64.sha256
asset_name: woop-amd64.sha256
asset_path: ./harmony-amd64.sha256
asset_name: harmony-amd64.sha256
asset_content_type: text/plain
- name: Upload gpg signature of woop amd64 binary for Linux
- name: Upload gpg signature of harmony amd64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-amd64.sig
asset_name: woop-amd64.sig
asset_path: ./harmony-amd64.sig
asset_name: harmony-amd64.sig
asset_content_type: application/octet-stream
- name: Upload woop arm64 binary for Linux
- name: Upload harmony arm64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-arm64
asset_name: woop-arm64
asset_path: ./harmony-arm64
asset_name: harmony-arm64
asset_content_type: application/octet-stream
- name: Upload sha256 signature of woop arm64 binary for Linux
- name: Upload sha256 signature of harmony arm64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-arm64.sha256
asset_name: woop-arm64.sha256
asset_path: ./harmony-arm64.sha256
asset_name: harmony-arm64.sha256
asset_content_type: text/plain
- name: Upload gpg signature of woop arm64 binary for Linux
- name: Upload gpg signature of harmony arm64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-arm64.sig
asset_name: woop-arm64.sig
asset_path: ./harmony-arm64.sig
asset_name: harmony-arm64.sig
asset_content_type: application/octet-stream
- name: Upload woop binary for MacOS
- name: Upload harmony binary for MacOS
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-macos.zip
asset_name: woop-macos-${{ env.build_version }}.zip
asset_path: ./harmony-macos.zip
asset_name: harmony-macos-${{ env.build_version }}.zip
asset_content_type: application/zip
- name: Upload sha256 signature of woop for MacOS
- name: Upload sha256 signature of harmony for MacOS
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-macos.zip.sha256
asset_name: woop-macos.zip.sha256
asset_path: ./harmony-macos.zip.sha256
asset_name: harmony-macos.zip.sha256
asset_content_type: text/plain

@ -1,4 +1,4 @@
name: release woop
name: release harmony
on:
push:
@ -14,10 +14,10 @@ jobs:
tag_annotated: ${{ steps.check-tag-annotated.outputs.tag_annotated }}
steps:
- name: Checkout woop core code
- name: Checkout harmony core code
uses: actions/checkout@v3
with:
path: woop
path: harmony
ref: ${{ github.ref }}
fetch-depth: 0
@ -31,10 +31,10 @@ jobs:
else
echo "::set-output name=tag_annotated::false"
fi
working-directory: woop
working-directory: harmony
build:
name: Build woop binary
name: Build harmony binary
needs: check
runs-on: ${{ matrix.os }}
if: needs.check.outputs.tag_annotated == 'true'
@ -53,26 +53,26 @@ jobs:
- name: Checkout dependence repo
uses: actions/checkout@v3
with:
repository: woop-chain/mcl
repository: harmony-one/mcl
path: mcl
- name: Checkout dependence repo
uses: actions/checkout@v3
with:
repository: woop-chain/bls
repository: harmony-one/bls
path: bls
- name: Checkout woop core code
- name: Checkout harmony core code
uses: actions/checkout@v3
with:
path: woop
path: harmony
ref: ${{ github.ref }}
fetch-depth: 0
- name: Set up Go with go.mod
uses: actions/setup-go@v3
with:
go-version-file: 'woop/go.mod'
go-version-file: 'harmony/go.mod'
- name: Get latest version and release
run: |
@ -80,28 +80,28 @@ jobs:
RELEASE=$(git describe --long | cut -f2 -d-)
echo "build_version=$VERSION" >> $GITHUB_ENV
echo "build_release=$RELEASE" >> $GITHUB_ENV
working-directory: woop
working-directory: harmony
- name: Build woop binary and packages for Linux
- name: Build harmony binary and packages for Linux
if: matrix.os == 'ubuntu-22.04'
run: |
make linux_static
make deb
echo %_signature gpg >> $HOME/.rpmmacros && echo "%_gpg_name Woop (wikiwoop.com)" >> $HOME/.rpmmacros
echo %_signature gpg >> $HOME/.rpmmacros && echo "%_gpg_name Harmony (harmony.one)" >> $HOME/.rpmmacros
make rpm
mv ./bin/woop ./bin/woop-amd64
mv $HOME/debbuild/woop-$build_version-$build_release.deb ./bin/
mv $HOME/rpmbuild/RPMS/x86_64/woop-$build_version-$build_release.x86_64.rpm ./bin/
working-directory: woop
mv ./bin/harmony ./bin/harmony-amd64
mv $HOME/debbuild/harmony-$build_version-$build_release.deb ./bin/
mv $HOME/rpmbuild/RPMS/x86_64/harmony-$build_version-$build_release.x86_64.rpm ./bin/
working-directory: harmony
- name: Build woop binary and packages for Linux
- name: Build harmony binary and packages for Linux
if: join(matrix.os, '-') == 'self-hosted-linux-ARM64'
run: |
make linux_static
mv ./bin/woop ./bin/woop-arm64
working-directory: woop
mv ./bin/harmony ./bin/harmony-arm64
working-directory: harmony
- name: Build woop binary and packages for MacOS
- name: Build harmony binary and packages for MacOS
if: matrix.os == 'macos-12'
run: |
brew install bash
@ -113,29 +113,29 @@ jobs:
sudo ln -sf /usr/local/opt/gmp /opt/homebrew/opt/gmp
make
cd ./bin && mkdir ./lib && mv ./*.dylib ./lib && rm -f ./bootnode
gpg --detach-sign woop
zip -qr ./woop-macos.zip ./*
rm -rf `ls * | egrep -v woop-macos.zip`
working-directory: woop
gpg --detach-sign harmony
zip -qr ./harmony-macos.zip ./*
rm -rf `ls * | egrep -v harmony-macos.zip`
working-directory: harmony
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: woop
path: woop/bin/*
name: harmony
path: harmony/bin/*
retention-days: 1
docker-build:
name: Build and push woop docker image
name: Build and push harmony docker image
needs: [check, build]
runs-on: ubuntu-22.04
if: needs.check.outputs.tag_annotated == 'true'
steps:
- name: Checkout woop core code
- name: Checkout harmony core code
uses: actions/checkout@v3
with:
path: woop
path: harmony
ref: ${{ github.ref }}
fetch-depth: 0
@ -145,17 +145,17 @@ jobs:
RELEASE=$(git describe --long | cut -f2 -d-)
echo "build_version=$VERSION" >> $GITHUB_ENV
echo "build_release=$RELEASE" >> $GITHUB_ENV
working-directory: woop
working-directory: harmony
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: woop
name: harmony
- name: Build preview works
run: |
mv $GITHUB_WORKSPACE/woop-amd64 ./scripts/docker/woop
working-directory: woop
mv $GITHUB_WORKSPACE/harmony-amd64 ./scripts/docker/harmony
working-directory: harmony
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
@ -169,12 +169,12 @@ jobs:
- name: Build and push
uses: docker/build-push-action@v3
with:
context: ./woop/scripts/docker
file: ./woop/scripts/docker/Dockerfile
context: ./harmony/scripts/docker
file: ./harmony/scripts/docker/Dockerfile
push: true
tags: |
woopchain/woop:latest
woopchain/woop:${{ env.build_version }}-${{ env.build_release }}
harmonyone/harmony:latest
harmonyone/harmony:${{ env.build_version }}-${{ env.build_release }}
release-page:
name: Sign binary and create and publish release page
@ -189,10 +189,10 @@ jobs:
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
passphrase: ${{ secrets.GPG_PRIVATE_KEY_PASS }}
- name: Checkout woop core code
- name: Checkout harmony core code
uses: actions/checkout@v3
with:
path: woop
path: harmony
ref: ${{ github.ref }}
fetch-depth: 0
@ -204,26 +204,26 @@ jobs:
echo "build_version=$VERSION" >> $GITHUB_ENV
echo "build_version_long=$VERSION_LONG" >> $GITHUB_ENV
echo "build_release=$RELEASE" >> $GITHUB_ENV
working-directory: woop
working-directory: harmony
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: woop
name: harmony
- name: Signed amd64 woop binary
- name: Signed amd64 harmony binary
run: |
gpg --detach-sign woop-amd64
sha256sum woop-amd64 >> woop-amd64.sha256
gpg --detach-sign harmony-amd64
sha256sum harmony-amd64 >> harmony-amd64.sha256
- name: Signed arm64 woop binary
- name: Signed arm64 harmony binary
run: |
gpg --detach-sign woop-arm64
sha256sum woop-arm64 >> woop-arm64.sha256
gpg --detach-sign harmony-arm64
sha256sum harmony-arm64 >> harmony-arm64.sha256
- name: Signed amd64 woop binary
- name: Signed amd64 harmony binary
run: |
shasum -a 256 woop-macos.zip >> woop-macos.zip.sha256
shasum -a 256 harmony-macos.zip >> harmony-macos.zip.sha256
- name: Get tag message
env:
@ -232,7 +232,7 @@ jobs:
touch ./tag_message.md
TAG_MESSAGE=$(git cat-file tag v$build_version | tail -n+6)
echo -e "$TAG_MESSAGE\n\nThe released version: $build_version_long" >> ./tag_message.md
working-directory: woop
working-directory: harmony
- name: Create Release
id: create_release
@ -244,114 +244,114 @@ jobs:
release_name: Mainnet Release ${{ env.build_version }}
draft: true
prerelease: false
body_path: ./woop/tag_message.md
body_path: ./harmony/tag_message.md
- name: Upload woop binary for Linux
- name: Upload harmony binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-amd64
asset_name: woop
asset_path: ./harmony-amd64
asset_name: harmony
asset_content_type: application/octet-stream
- name: Upload woop deb package for Linux
- name: Upload harmony deb package for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-${{ env.build_version }}-${{ env.build_release }}.deb
asset_name: woop-${{ env.build_version }}.deb
asset_path: ./harmony-${{ env.build_version }}-${{ env.build_release }}.deb
asset_name: harmony-${{ env.build_version }}.deb
asset_content_type: application/x-deb
- name: Upload woop rpm package for Linux
- name: Upload harmony rpm package for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-${{ env.build_version }}-${{ env.build_release }}.x86_64.rpm
asset_name: woop-${{ env.build_version }}.x86_64.rpm
asset_path: ./harmony-${{ env.build_version }}-${{ env.build_release }}.x86_64.rpm
asset_name: harmony-${{ env.build_version }}.x86_64.rpm
asset_content_type: application/x-rpm
- name: Upload woop amd64 binary for Linux
- name: Upload harmony amd64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-amd64
asset_name: woop-amd64
asset_path: ./harmony-amd64
asset_name: harmony-amd64
asset_content_type: application/octet-stream
- name: Upload sha256 signature of woop amd64 binary for Linux
- name: Upload sha256 signature of harmony amd64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-amd64.sha256
asset_name: woop-amd64.sha256
asset_path: ./harmony-amd64.sha256
asset_name: harmony-amd64.sha256
asset_content_type: text/plain
- name: Upload gpg signature of woop amd64 binary for Linux
- name: Upload gpg signature of harmony amd64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-amd64.sig
asset_name: woop-amd64.sig
asset_path: ./harmony-amd64.sig
asset_name: harmony-amd64.sig
asset_content_type: application/octet-stream
- name: Upload woop arm64 binary for Linux
- name: Upload harmony arm64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-arm64
asset_name: woop-arm64
asset_path: ./harmony-arm64
asset_name: harmony-arm64
asset_content_type: application/octet-stream
- name: Upload sha256 signature of woop arm64 binary for Linux
- name: Upload sha256 signature of harmony arm64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-arm64.sha256
asset_name: woop-arm64.sha256
asset_path: ./harmony-arm64.sha256
asset_name: harmony-arm64.sha256
asset_content_type: text/plain
- name: Upload gpg signature of woop arm64 binary for Linux
- name: Upload gpg signature of harmony arm64 binary for Linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-arm64.sig
asset_name: woop-arm64.sig
asset_path: ./harmony-arm64.sig
asset_name: harmony-arm64.sig
asset_content_type: application/octet-stream
- name: Upload woop binary for MacOS
- name: Upload harmony binary for MacOS
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-macos.zip
asset_name: woop-macos-${{ env.build_version }}.zip
asset_path: ./harmony-macos.zip
asset_name: harmony-macos-${{ env.build_version }}.zip
asset_content_type: application/zip
- name: Upload sha256 signature of woop for MacOS
- name: Upload sha256 signature of harmony for MacOS
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./woop-macos.zip.sha256
asset_name: woop-macos.zip.sha256
asset_path: ./harmony-macos.zip.sha256
asset_name: harmony-macos.zip.sha256
asset_content_type: text/plain

10
.gitignore vendored

@ -46,8 +46,8 @@ bc_config.json
# leveldb local storage
db/
# woop node keystore
.wikikey
# harmony node keystore
.hmykey
# staking keystore
.stakingkey
@ -68,7 +68,7 @@ node_modules/
test/.bnkey
# exported keys
.wiki/*.key
.hmy/*.key
# blspass
blspass.txt
@ -86,11 +86,11 @@ db-127.0.0.1-*
coverage.txt
# testdata directory
woop_db_*
harmony_db_*
explorer_storage_*
# local blskeys for testing
.wiki/blskeys
.hmy/blskeys
# pprof profiles
profiles/*.pb.gz

@ -0,0 +1 @@
e859f90f6cb272e078c5601ba6f921e53a881422928b10240aa50c5868af3db6f4fbbb30d91b232a8c0a1000355b8da9b510c0bb6eea36ba17a5ed8df875656e6e3467728c830e51ddfee1e736f986438e9d79ed56bc8f3d0e7734ec

@ -0,0 +1 @@
dd11eabd17b257220f9523efd6524f12b7c1356f21667a87fe1b8c630bdf9f7d247087f85a8f661a7ef8ccde6e6287d54361aa2287fdf258321a1cc1d885b45a3b636a23e40aec0357dbd699c82a36e07fff9ca6fd85f79652320113

@ -0,0 +1 @@
ef98515555a78fd211906a3eeaf2aca18452c48665b258b5e6a1600693ff65e8a3b6d6a3b1efd0775a297824d42d0454f4ae49789a8bc05bc2ff89b3eaa768754db6d2290fa013a6b6e42eeca8fa45a14c73192081fdd0820673ad17

@ -0,0 +1 @@
8ec21daae97cf60451250b08307df26f9d453860f3e98b4b8244d06846018a4f02c1183373bdf21d64c7ed203821df8e6026975c886ec3f3451127011696ffd8f591457ff12a1fa169b202944156408744374f89654d0d9367984dc0

@ -0,0 +1 @@
b9a18c5f14b14ac6a648a792265d28f81dab207b7367573b83c4a206e01e1bd238f3a0416c66554254a77a473dec0e68bd8bf30185c91b12b07d634e53fd3f7a059eaeca39ff2b67bc848eb05869fc05255121d53c1f0a11bf4f511d

@ -0,0 +1 @@
cdaa7ee86f59aa4bd326af635a899afb21b204882b1e911f5e5a250c76c044d1ccfbb15772d26e36ee9ffe6c290bdebfe49ac1cf1989c913f3d06c76d4c20ebf8ba4a00644405064e51ce2fbdc14c35892393c84e4cc98ca5f2780e6

@ -0,0 +1 @@
c3e2375e1f3d09399c96215861fd4f231e2ec9fd6ec9a8e1143efaff862893542610eacfcf93a76b359fc0a4644a41ffbae7e3d3f580d816231252e28f41633e297796baa3ddd94b9ef2b183ab2b678c675950ef3fbe64dc80e2a680

@ -0,0 +1 @@
2feddeb82936401a582b4d48aa7bc62f1ccabcad430ee9e70ca682392767a8a162d17f691cc22089f434c76c790e57ad0ce93a61aa070b87f802f42d84ac02d3d33cc4baa4a643eeb53b19c4105ba01e2dd7a3cccb75b0678cc71d21

@ -0,0 +1 @@
10f1173239fc903360055a2ffe37948cddbb2b199f66572af56e623b6681c100f2fc71b08cef8fd59c0a784047f321543d81aee9a2d493214c31e72852c5d1c8f350baf4d8667fec16f520680fc59371a0f874ffcc9cd5c824291ff5

@ -0,0 +1 @@
837cdffcc049ba89931d570e4be38bfef513df65d8dd277b0da8e62adf8c23b3c5229a2a4b36aa2c90c17d490dd5f95869365ebc4429d1efc784d25a64db246870d4bb4831d98ec02317ea88b76491a7fdfd2fa5e10f267e8f3989d9

@ -0,0 +1 @@
3866b51e59955446f625063edc6a6f352662e92224ce78a2921e7699d478ace9d1c7a3c7c1932a81c5d7fc677e9c7620fe414a0b8e852bc075d600455e8b07b0918296e2914a656764e438e6978623f23ae63207ef4b377aac478048

@ -0,0 +1 @@
56e7156cfa4151f7beb62d94f92bf08f0544cc35aa65eec1c68f0db99fdef68dd0cc354ba61e949dd962100216155e86052272965b7063d8ebb9a6c7be9c35ab421415f12d05dc0c719b6ac2b3ec20fedc267fbf6a4f022925bc45bf

@ -0,0 +1 @@
926454b15914a0d0a18686173dcee027bd6cb3911866f360a3b383b240431c75130e2f3b3697f5117e072a6c7fc39dcdeb8b1e790034e844b070867740d5eb2d918b649701490e56aecdb7ef22c335d6300a103719c98bb094aec530

@ -0,0 +1 @@
d2e561f8184c1e2ab98a77c82cec7aa6ee2d729ce7664c35784299245c5a2f98afeda45049ff55ac19ad7fe8c9a13d57fd2f250b4a0bcba9146f01d789ce8fbab4433ca09fbf3f6d476f7832a62539c4c12ac7fa5ce37d535c1d21e9

@ -0,0 +1 @@
dbbf69ebbe21d0da28bbf96294171b17644f40bce2bd38470b9345c75811b9685587b0acf9b1806b48a28e7cc56e5e4daad281d2950612beaeef607e8aa71bbc33ed91f76c170b1efe6691a4038ab3b149ac771279ee9ea90b501444

@ -0,0 +1 @@
2d531f231ea393b00d1e74887135dbc6144ccbb683438b7f1b7b9a217ca890ef82ba0a2fad7c103f31ac46cc6cbf073d4489726b3069af3414c930234d284453292cd1a5c14baf884a1f074fe4f70856c2e454e0da1f6acd1d745671

@ -0,0 +1 @@
5ea6f866b075e1c42d2a0aa72862f5161b45e4e5064f87f12c241d43425cdce6f785697d3a7dc40a7b17222543390dac8e4908e71c44a7180f86bda6930b1df96d59adb70f24756c4c4430325b6a2ba36364870dd768d55a4a0c86e1

@ -0,0 +1 @@
764e55fb6b84617d188846e274152ca564b8b013cfe661661bd7c6681fdae3b000ef96c0654cdd7ff8755d32768e3770c4137e9d08c5ea7c8083705f41aae761bc03737cf316382f51c63d9e335a4c6a2d770e190ce5306cdca7821a

@ -0,0 +1 @@
4f10ae42aefd0acfc50cc2a5874eff7ecd98c8a2a6bb9fa7f35f7e23a71211a24d8428b13472558000193d03077afdc5d534e0a91e0113114d141783db621499f7866bcf56300befd2a60408e56d9908069cc51e2216113f050c3d3e

@ -0,0 +1 @@
b3dae95cb93d7081949f19fa14b682254b52034de91020394a7df5bc87c0629ff73e3fc8ad760d911ea9fb488587d3bc36520e936d85e29bfa303db66dacc56728191906b686fc5ea73a63efb83c423f01e150b6737bd07c4763155c

@ -0,0 +1 @@
f7255c1a11961a9dd4f7b0776c6113fc479829880abe05a16322099b651d5b31b829f63794d9c89fe7e9fc9729f7a722b566b77ca3f50824895b4ce26779ecfcfe6e50908f7fd26b101d34f0addb0b6cab5d2d48e82c7db9964dd09d

@ -0,0 +1 @@
8e1c2ffc67eeb241e00f5a87a280cb1705f38dd5e21a727aaccf1f82f60256ff9b7e409e2a059fcaae2f7b41a76ef58149d25fe9c47626ca1df012661d344d9f8a25d817183c55e8be840f5a155e7374cf1044e0abbaa23e6ac0c041

@ -0,0 +1 @@
e32f49038a6eddd0734bc444789ee24cee3ca53f10f9fab44c103099ce0cb3d6978f524cdacbf5b1d4d99e8cca7c3ffe0ebc7f9bc256b9a47b0b3b5a09f821718ee948e28bd3e6392f113a79f9a1a1bfc7b743b2dc06a8a1dc9dd1e9

@ -0,0 +1 @@
04708dbccd097c7f1278b51f6e72a8dead4f913c55dbc412f5d4519ed67d8fb56944c719a544fe724f0648ac9a74875d5458855e7bb434eaae0249f3b6fafbf311147de2f1e64e0394043e55c6cec92ce28af61dda93da6bf65523d3

@ -0,0 +1 @@
2ddd1d3d707da7a1a790aa1c3712c7457eaf63430cdefbd8988602369b112a4b2bde7d1e9769a6e980dc168ed337021bec96ba72607272ba6efdac603bda0d601e0e757384ed92b83f7a99efe412d08d13a9540e654e57aa9f702553

@ -0,0 +1 @@
0eb52e17542aac608b63b714b4f00e620c47743524c9367c9d0c2cb770c727c81167f0b5e94c59c9c0e68864407ca4c64922f6b23a22cb93fa260486d17d67faab495acc567ee41adadffe36632e00d36a903f26cbc60055c5c681ad

@ -1,2 +1,2 @@
%_topdir %(echo $HOME)/rpmbuild
%_gpg_name Woop Chain <info@wikiwoop.com>
%_gpg_name Leo Chen <leo@harmony.one>

@ -3,7 +3,7 @@ dist: jammy
language: go
go:
- 1.19.5
go_import_path: github.com/woop-chain/woop
go_import_path: github.com/harmony-one/harmony
cache:
directories:
- docker_images
@ -23,18 +23,18 @@ addons:
install:
# default working directory with source code is automatically set to
# /home/travis/gopath/src/github.com/woop-chain/woop
# /home/travis/gopath/src/github.com/harmony-one/harmony
# https://docs.travis-ci.com/user/languages/go/#go-import-path
- echo $TRAVIS_PULL_REQUEST_BRANCH
- git clone https://github.com/woop-chain/mcl.git $GOPATH/src/github.com/woop-chain/mcl
- git clone https://github.com/woop-chain/bls.git $GOPATH/src/github.com/woop-chain/bls
- git clone https://github.com/woop-chain/woop-test.git $GOPATH/src/github.com/woop-chain/woop-test
- (cd $GOPATH/src/github.com/woop-chain/mcl; make -j4)
- (cd $GOPATH/src/github.com/woop-chain/bls; make BLS_SWAP_G=1 -j4)
- git clone https://github.com/harmony-one/mcl.git $GOPATH/src/github.com/harmony-one/mcl
- git clone https://github.com/harmony-one/bls.git $GOPATH/src/github.com/harmony-one/bls
- git clone https://github.com/harmony-one/harmony-test.git $GOPATH/src/github.com/harmony-one/harmony-test
- (cd $GOPATH/src/github.com/harmony-one/mcl; make -j4)
- (cd $GOPATH/src/github.com/harmony-one/bls; make BLS_SWAP_G=1 -j4)
# - curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.41.1
- make go-get
- go install golang.org/x/tools/cmd/goimports@latest
- go install github.com/woop-chain/gencodec@latest
- go install github.com/harmony-ek/gencodec@latest
script:
- ${TEST}
after_success:

@ -4,7 +4,7 @@ The black list is a newline delimited file of wallet addresses. It can also supp
## Default Location
By default, the woop binary looks for the file `./.wiki/blaklist.txt`.
By default, the harmony binary looks for the file `./.hmy/blaklist.txt`.
## Example File
```

@ -55,7 +55,7 @@ further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at info@wikiwoop.com. All
reported by contacting the project team at info@harmony.one. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.

@ -1,4 +1,4 @@
# Contributing To Woop
# Contributing To Harmony
## Coding Guidelines
@ -25,8 +25,8 @@ For example, a typical workflow is like the following.
```bash
# assuming you are working on a fix of bug1, and use a local branch called "fixes_of_bug1".
git clone https://github.com/woop-chain/woop
cd woop
git clone https://github.com/harmony-one/harmony
cd harmony
# create a local branch to keep track of the origin/master
git branch fixes_of_bug1 origin/master

@ -7,10 +7,10 @@ SHELL ["/bin/bash", "-c"]
ENV GOPATH=/root/go
ENV GO111MODULE=on
ENV WIKI_PATH=${GOPATH}/src/github.com/woop-chain
ENV HMY_PATH=${GOPATH}/src/github.com/harmony-one
ENV OPENSSL_DIR=/usr/lib/ssl
ENV MCL_DIR=${WIKI_PATH}/mcl
ENV BLS_DIR=${WIKI_PATH}/bls
ENV MCL_DIR=${HMY_PATH}/mcl
ENV BLS_DIR=${HMY_PATH}/bls
ENV CGO_CFLAGS="-I${BLS_DIR}/include -I${MCL_DIR}/include"
ENV CGO_LDFLAGS="-L${BLS_DIR}/lib"
ENV LD_LIBRARY_PATH=${BLS_DIR}/lib:${MCL_DIR}/lib
@ -29,15 +29,15 @@ RUN mkdir ~/bin && \
RUN eval "$(~/bin/gimme ${GIMME_GO_VERSION})"
RUN git clone https://github.com/woop-chain/woop.git ${WIKI_PATH}/woop
RUN git clone https://github.com/harmony-one/harmony.git ${HMY_PATH}/harmony
RUN git clone https://github.com/woop-chain/bls.git ${WIKI_PATH}/bls
RUN git clone https://github.com/harmony-one/bls.git ${HMY_PATH}/bls
RUN git clone https://github.com/woop-chain/mcl.git ${WIKI_PATH}/mcl
RUN git clone https://github.com/harmony-one/mcl.git ${HMY_PATH}/mcl
RUN git clone https://github.com/woop-chain/go-sdk.git ${WIKI_PATH}/go-sdk
RUN git clone https://github.com/harmony-one/go-sdk.git ${HMY_PATH}/go-sdk
RUN cd ${WIKI_PATH}/bls && make -j8 BLS_SWAP_G=1
RUN cd ${HMY_PATH}/bls && make -j8 BLS_SWAP_G=1
RUN touch /root/.bash_profile && \
gimme ${GIMME_GO_VERSION} >> /root/.bash_profile && \
@ -58,7 +58,7 @@ RUN . ~/.bash_profile; \
go install golang.org/x/tools/...; \
go install honnef.co/go/tools/cmd/staticcheck/...
WORKDIR ${WIKI_PATH}/woop
WORKDIR ${HMY_PATH}/harmony
RUN scripts/install_build_tools.sh
@ -66,7 +66,7 @@ RUN go mod tidy
RUN scripts/go_executable_build.sh -S
RUN cd ${WIKI_PATH}/go-sdk && make -j8 && cp wiki /root/bin
RUN cd ${HMY_PATH}/go-sdk && make -j8 && cp hmy /root/bin
ARG K1=one1tq4hy947c9gr8qzv06yxz4aeyhc9vn78al4rmu
ARG K2=one1y5gmmzumajkm5mx3g2qsxtza2d3haq0zxyg47r
@ -76,16 +76,16 @@ ARG KS1=8d222cffa99eb1fb86c581d9dfe7d60dd40ec62aa29056b7ff48028385270541
ARG KS2=da1800da5dedf02717696675c7a7e58383aff90b1014dfa1ab5b7bd1ce3ef535
ARG KS3=f4267bb5a2f0e65b8f5792bb6992597fac2b35ebfac9885ce0f4152c451ca31a
RUN wiki keys import-private-key ${KS1} && \
wiki keys import-private-key ${KS2} && \
wiki keys import-private-key ${KS3} && \
wiki keys generate-bls-key > keys.json
RUN hmy keys import-private-key ${KS1} && \
hmy keys import-private-key ${KS2} && \
hmy keys import-private-key ${KS3} && \
hmy keys generate-bls-key > keys.json
RUN jq '.["encrypted-private-key-path"]' -r keys.json > /root/keypath && cp keys.json /root && \
echo "export BLS_KEY_PATH=$(cat /root/keypath)" >> /root/.bashrc && \
echo "export BLS_KEY=$(jq '.["public-key"]' -r keys.json)" >> /root/.bashrc && \
echo "printf '${K1}, ${K2}, ${K3} are imported accounts in wiki for local dev\n\n'" >> /root/.bashrc && \
echo "printf 'test with: wiki blockchain validator information ${K1}\n\n'" >> /root/.bashrc && \
echo "printf '${K1}, ${K2}, ${K3} are imported accounts in hmy for local dev\n\n'" >> /root/.bashrc && \
echo "printf 'test with: hmy blockchain validator information ${K1}\n\n'" >> /root/.bashrc && \
echo "echo "$(jq '.["public-key"]' -r keys.json)" is an extern bls key" >> /root/.bashrc && \
echo ". /etc/bash_completion" >> /root/.bashrc && \
echo ". <(wiki completion)" >> /root/.bashrc
echo ". <(hmy completion)" >> /root/.bashrc

@ -1,6 +1,6 @@
# Fiduciary License Agreement 2.0
Thank you for your interest in contributing to Simple Rules Company's Woop
Thank you for your interest in contributing to Simple Rules Company's Harmony
("We" or "Us").
The purpose of this contributor agreement ("Agreement") is to clarify and
@ -44,7 +44,7 @@ If You are an employee and have created the Contribution as part of your
employment, You need to have Your employer approve this Agreement or sign the
Entity version of this document. If You do not own the Copyright in the entire
work of authorship, any other author of the Contribution should also sign this
– in any event, please contact Us at licensing@wikiwoop.com
– in any event, please contact Us at licensing@harmony.one
## 1. Definitions

@ -5,7 +5,7 @@ export LD_LIBRARY_PATH:=$(TOP)/bls/lib:$(TOP)/mcl/lib:/opt/homebrew/opt/openssl@
export LIBRARY_PATH:=$(LD_LIBRARY_PATH)
export DYLD_FALLBACK_LIBRARY_PATH:=$(LD_LIBRARY_PATH)
export GO111MODULE:=on
PKGNAME=woop
PKGNAME=harmony
VERSION?=$(shell git tag -l --sort=-v:refname | head -n 1 | tr -d v)
RELEASE?=$(shell git describe --long | cut -f2 -d-)
RPMBUILD=$(HOME)/rpmbuild
@ -18,11 +18,11 @@ all: libs
bash ./scripts/go_executable_build.sh -S
help:
@echo "all - build the woop binary & bootnode along with the MCL & BLS libs (if necessary)"
@echo "all - build the harmony binary & bootnode along with the MCL & BLS libs (if necessary)"
@echo "libs - build only the MCL & BLS libs (if necessary) "
@echo "exe - build the woop binary & bootnode"
@echo "race - build the woop binary & bootnode with race condition checks"
@echo "trace-pointer - build the woop binary & bootnode with pointer analysis"
@echo "exe - build the harmony binary & bootnode"
@echo "race - build the harmony binary & bootnode with race condition checks"
@echo "trace-pointer - build the harmony binary & bootnode with pointer analysis"
@echo "debug - start a localnet with 2 shards (s0 rpc endpoint = localhost:9700; s1 rpc endpoint = localhost:9800)"
@echo "debug-kill - force kill the localnet"
@echo "debug-ext - start a localnet with 2 shards and external (s0 rpc endpoint = localhost:9598; s1 rpc endpoint = localhost:9596)"
@ -34,13 +34,13 @@ help:
@echo "test-rpc-attach - attach onto the rpc testing docker container for inspection"
@echo "test-rosetta - run the rosetta tests"
@echo "test-rosetta-attach - attach onto the rosetta testing docker container for inspection"
@echo "linux_static - static build the woop binary & bootnode along with the MCL & BLS libs (for linux)"
@echo "rpm - build a woop RPM pacakge"
@echo "rpmpub_dev - publish woop RPM package to development repo"
@echo "rpmpub_prod - publish woop RPM package to production repo"
@echo "deb - build a woop Debian pacakge"
@echo "debpub_dev - publish woop Debian package to development repo"
@echo "debpub_prod - publish woop Debian package to production repo"
@echo "linux_static - static build the harmony binary & bootnode along with the MCL & BLS libs (for linux)"
@echo "rpm - build a harmony RPM pacakge"
@echo "rpmpub_dev - publish harmony RPM package to development repo"
@echo "rpmpub_prod - publish harmony RPM package to production repo"
@echo "deb - build a harmony Debian pacakge"
@echo "debpub_dev - publish harmony Debian package to development repo"
@echo "debpub_prod - publish harmony Debian package to production repo"
libs:
make -C $(TOP)/mcl -j8
@ -107,14 +107,14 @@ linux_static:
deb_init:
rm -rf $(DEBBUILD)
mkdir -p $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/{etc/systemd/system,usr/sbin,etc/sysctl.d,etc/woop}
cp -f bin/woop $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/usr/sbin/
bin/woop dumpconfig $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/etc/woop/woop.conf
cp -f scripts/package/rclone.conf $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/etc/woop/
cp -f scripts/package/woop.service $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/etc/systemd/system/
cp -f scripts/package/woop-setup.sh $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/usr/sbin/
cp -f scripts/package/woop-rclone.sh $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/usr/sbin/
cp -f scripts/package/woop-sysctl.conf $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/etc/sysctl.d/99-woop.conf
mkdir -p $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/{etc/systemd/system,usr/sbin,etc/sysctl.d,etc/harmony}
cp -f bin/harmony $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/usr/sbin/
bin/harmony dumpconfig $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/etc/harmony/harmony.conf
cp -f scripts/package/rclone.conf $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/etc/harmony/
cp -f scripts/package/harmony.service $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/etc/systemd/system/
cp -f scripts/package/harmony-setup.sh $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/usr/sbin/
cp -f scripts/package/harmony-rclone.sh $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/usr/sbin/
cp -f scripts/package/harmony-sysctl.conf $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/etc/sysctl.d/99-harmony.conf
cp -r scripts/package/deb/DEBIAN $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)
VER=$(VERSION)-$(RELEASE) scripts/package/templater.sh scripts/package/deb/DEBIAN/control > $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/DEBIAN/control
@ -135,18 +135,18 @@ rpm_init:
rm -rf $(RPMBUILD)
mkdir -p $(RPMBUILD)/{SOURCES,SPECS,BUILD,RPMS,BUILDROOT,SRPMS}
mkdir -p $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
cp -f bin/woop $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
bin/woop dumpconfig $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)/woop.conf
cp -f scripts/package/woop.service $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
cp -f scripts/package/woop-setup.sh $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
cp -f scripts/package/woop-rclone.sh $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
cp -f bin/harmony $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
bin/harmony dumpconfig $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)/harmony.conf
cp -f scripts/package/harmony.service $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
cp -f scripts/package/harmony-setup.sh $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
cp -f scripts/package/harmony-rclone.sh $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
cp -f scripts/package/rclone.conf $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
cp -f scripts/package/woop-sysctl.conf $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
VER=$(VERSION) REL=$(RELEASE) scripts/package/templater.sh scripts/package/rpm/woop.spec > $(RPMBUILD)/SPECS/woop.spec
cp -f scripts/package/harmony-sysctl.conf $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
VER=$(VERSION) REL=$(RELEASE) scripts/package/templater.sh scripts/package/rpm/harmony.spec > $(RPMBUILD)/SPECS/harmony.spec
(cd $(RPMBUILD)/SOURCES; tar cvf $(PKGNAME)-$(VERSION).tar $(PKGNAME)-$(VERSION))
rpm_build:
rpmbuild --target x86_64 -bb $(RPMBUILD)/SPECS/woop.spec
rpmbuild --target x86_64 -bb $(RPMBUILD)/SPECS/harmony.spec
rpm: rpm_init rpm_build
rpm --addsign $(RPMBUILD)/RPMS/x86_64/$(PKGNAME)-$(VERSION)-$(RELEASE).x86_64.rpm
@ -164,7 +164,7 @@ go-test:
go test -vet=all -race ./...
docker:
docker build --pull -t woopchain/$(PKGNAME):latest -f scripts/docker/Dockerfile .
docker build --pull -t harmonyone/$(PKGNAME):latest -f scripts/docker/Dockerfile .
travis_go_checker:
bash ./scripts/travis_go_checker.sh

@ -1,10 +1,18 @@
# WoopChain
# Harmony
[![Build Status](https://travis-ci.com/harmony-one/harmony.svg?branch=main)](https://travis-ci.com/harmony-one/harmony)
![gopherbadger-tag-do-not-edit](https://img.shields.io/badge/Go%20Coverage-45%25-brightgreen.svg?longCache=true&style=flat)
![Discord](https://img.shields.io/discord/532383335348043777.svg)
[![Github Action](https://github.com/harmony-one/harmony/actions/workflows/ci.yaml/badge.svg?event=push)](https://github.com/harmony-one/harmony/actions/workflows/ci.yaml)
[![Go Report Card](https://goreportcard.com/badge/github.com/harmony-one/harmony)](https://goreportcard.com/report/github.com/harmony-one/harmony)
## General Documentation
https://docs.wikiwoop.com/
https://docs.harmony.one
## API Guide
http://api.hmny.io/
## Requirements
@ -39,27 +47,27 @@ For macOS, you can reference this [guide](http://tldrdevnotes.com/bash-upgrade-3
## Dev Environment
**Most repos from [woop-chain](https://github.com/woop-chain) assumes the GOPATH convention. More information [here](https://github.com/golang/go/wiki/GOPATH).**
**Most repos from [harmony-one](https://github.com/harmony-one) assumes the GOPATH convention. More information [here](https://github.com/golang/go/wiki/GOPATH).**
### First Install
Clone and set up all of the repos with the following set of commands:
1. Create the appropriate directories:
```bash
mkdir -p $(go env GOPATH)/src/github.com/woop-chain
cd $(go env GOPATH)/src/github.com/woop-chain
mkdir -p $(go env GOPATH)/src/github.com/harmony-one
cd $(go env GOPATH)/src/github.com/harmony-one
```
> If you get 'unknown command' or something along those lines, make sure to install [golang](https://golang.org/doc/install) first.
2. Clone this repo & dependent repos.
```bash
git clone https://github.com/woop-chain/mcl.git
git clone https://github.com/woop-chain/bls.git
git clone https://github.com/woop-chain/woop.git
cd woop
git clone https://github.com/harmony-one/mcl.git
git clone https://github.com/harmony-one/bls.git
git clone https://github.com/harmony-one/harmony.git
cd harmony
```
3. Build the woop binary & dependent libs
3. Build the harmony binary & dependent libs
```
go mod tidy
make
@ -69,19 +77,19 @@ make
## Dev Docker Image
Included in this repo is a Dockerfile that has a full woop development environment and
Included in this repo is a Dockerfile that has a full harmony development environment and
comes with emacs, vim, ag, tig and other creature comforts. Most importantly, it already has the go environment
with our C/C++ based library dependencies (`libbls` and `mcl`) set up correctly for you.
You can build the docker image for yourself with the following commands:
```bash
cd $(go env GOPATH)/src/github.com/woop-chain/woop
cd $(go env GOPATH)/src/github.com/harmony-one/harmony
make clean
docker build -t woop .
docker build -t harmony .
```
> If your build machine has an ARM-based chip, like Apple silicon (M1), the image is built for `linux/arm64` by default. To build for `x86_64`, apply the `--platform` arg like so:
> ```bash
> docker build --platform linux/amd64 -t woop .
> docker build --platform linux/amd64 -t harmony .
> ```
> Learn more about the `--platform` arg and multi-CPU architecture support, [here](https://docs.docker.com/engine/reference/builder/#automatic-platform-args-in-the-global-scope) and [here](https://docs.docker.com/desktop/multi-arch/).
@ -89,26 +97,26 @@ docker build -t woop .
Then you can start your docker container with the following command:
```bash
docker run --rm --name woop -it -v "$(go env GOPATH)/src/github.com/woop-chain/woop:/root/go/src/github.com/woop-chain/woop" woop /bin/bash
docker run --rm --name harmony -it -v "$(go env GOPATH)/src/github.com/harmony-one/harmony:/root/go/src/github.com/harmony-one/harmony" harmony /bin/bash
```
> Note that the woop repo will be shared between your docker container and your host machine. However, everything else in the docker container will be ephemeral.
> Note that the harmony repo will be shared between your docker container and your host machine. However, everything else in the docker container will be ephemeral.
If you need to open another shell, just do:
```bash
docker exec -it woop /bin/bash
docker exec -it harmony /bin/bash
```
Learn more about docker [here](https://docker-curriculum.com/).
## Build
The `make` command should automatically build the Woop binary & all dependent libs.
The `make` command should automatically build the Harmony binary & all dependent libs.
However, if you wish to bypass the Makefile, first export the build flags:
```bash
export CGO_CFLAGS="-I$GOPATH/src/github.com/woop-chain/bls/include -I$GOPATH/src/github.com/woop-chain/mcl/include -I/opt/homebrew/opt/openssl@1.1/include"
export CGO_LDFLAGS="-L$GOPATH/src/github.com/woop-chain/bls/lib -L/opt/homebrew/opt/openssl@1.1/lib"
export LD_LIBRARY_PATH=$GOPATH/src/github.com/woop-chain/bls/lib:$GOPATH/src/github.com/woop-chain/mcl/lib:/opt/homebrew/opt/openssl@1.1/lib
export CGO_CFLAGS="-I$GOPATH/src/github.com/harmony-one/bls/include -I$GOPATH/src/github.com/harmony-one/mcl/include -I/opt/homebrew/opt/openssl@1.1/include"
export CGO_LDFLAGS="-L$GOPATH/src/github.com/harmony-one/bls/lib -L/opt/homebrew/opt/openssl@1.1/lib"
export LD_LIBRARY_PATH=$GOPATH/src/github.com/harmony-one/bls/lib:$GOPATH/src/github.com/harmony-one/mcl/lib:/opt/homebrew/opt/openssl@1.1/lib
export LIBRARY_PATH=$LD_LIBRARY_PATH
export DYLD_FALLBACK_LIBRARY_PATH=$LD_LIBRARY_PATH
export GO111MODULE=on
@ -151,7 +159,7 @@ Note that all test Docker containers bind several ports to the host machine for
* `9798` - Shard 1 Rosetta (for an explorer)
* `9899` - Shard 0 WS for an explorer
* `9898` - Shard 1 WS for an explorer
> This allows you to use curl, wiki CLI, postman, rosetta-cli, etc... on your host machine to play with or probe the localnet that was used for the test.
> This allows you to use curl, hmy CLI, postman, rosetta-cli, etc... on your host machine to play with or probe the localnet that was used for the test.
### Go tests
To run this test, do:
@ -167,7 +175,7 @@ make test-rpc
```
This test starts a localnet (within the Docker container), **ensures it reaches a consensus**, and runs a series of tests to ensure correct RPC behavior.
This test also acts as a preliminary integration test (more thorough tests are done on the testnets).
> The tests ran by this command can be found [here](https://github.com/woop-chain/woop-test/tree/master/localnet).
> The tests ran by this command can be found [here](https://github.com/harmony-one/harmony-test/tree/master/localnet).
If you wish to debug further with the localnet after the tests are done, open a new shell and run:
```bash
@ -175,9 +183,9 @@ make test-rpc-attach
```
> This will open a shell in the docker container that is running the Node API tests.
>
> Note that the docker container has the [Woop CLI](https://docs.wikiwoop.com/home/wallets/woop-cli) on path,
> therefore you can use that to debug if needed. For example, one could do `wiki blockchain latest-headers` to check
> the current block height of localnet. Reference the documentation for the CLI [here](https://docs.wikiwoop.com/home/wallets/woop-cli)
> Note that the docker container has the [Harmony CLI](https://docs.harmony.one/home/wallets/harmony-cli) on path,
> therefore you can use that to debug if needed. For example, one could do `hmy blockchain latest-headers` to check
> the current block height of localnet. Reference the documentation for the CLI [here](https://docs.harmony.one/home/wallets/harmony-cli)
> for more details & commands.
### Rosetta tests
@ -187,7 +195,7 @@ make test-rosetta
```
This test starts a localnet (within the Docker container), **ensures it reaches a consensus**, and runs the Construction & Data API checks using the [rosetta-cli](https://github.com/coinbase/rosetta-cli).
This test also acts as a preliminary integration test (more thorough tests are done on the testnets).
> The config for this test can be found [here](https://github.com/woop-chain/woop-test/blob/master/localnet/configs/localnet_rosetta_test_s0.json) & [here](https://github.com/woop-chain/woop-test/blob/master/localnet/configs/localnet_rosetta_test_s1.json)
> The config for this test can be found [here](https://github.com/harmony-one/harmony-test/blob/master/localnet/configs/localnet_rosetta_test_s0.json) & [here](https://github.com/harmony-one/harmony-test/blob/master/localnet/configs/localnet_rosetta_test_s1.json)
Similar to the RPC tests, if you wish to debug further with the localnet after the tests are done, open a new shell and run:
```bash
@ -196,10 +204,10 @@ make test-rosetta-attach
## License
Woop is licensed under GNU Lesser General Public License v3.0. See [`LICENSE`](LICENSE) file for
Harmony is licensed under GNU Lesser General Public License v3.0. See [`LICENSE`](LICENSE) file for
the terms and conditions.
Woop includes third-party open-source code. In general, a source subtree
Harmony includes third-party open-source code. In general, a source subtree
with a `LICENSE` or `COPYRIGHT` file is from a third party, and our
modifications thereto are licensed under the same third-party open source
license.
@ -208,7 +216,7 @@ Also please see [our Fiduciary License Agreement](FLA.md) if you are
contributing to the project. By your submission of your contribution to us, you
and we mutually agree to the terms and conditions of the agreement.
## Contributing To Woop
## Contributing To Harmony
See [`CONTRIBUTING`](CONTRIBUTING.md) for details.
@ -227,3 +235,10 @@ See [`CONTRIBUTING`](CONTRIBUTING.md) for details.
- EPoS staking mechanism
- Kademlia routing
### Planned Features
- Resharding
- Integration with WASM
- Fast state synchronization
- Auditable privacy asset using ZK proof

@ -2,7 +2,7 @@
## Reporting a Vulnerability
Create a github issue if vulnerability can be exposed publicly otherwise send an email to security@wikiwoop.com
Create a github issue if vulnerability can be exposed publicly otherwise send an email to security@harmony.one
Fingerprint : 4F8E 9A61 C807 B5E8 98E6 9BF2 F0C5 926C BA34 9CC5

@ -28,7 +28,7 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/crypto"
"github.com/woop-chain/woop/common/math"
"github.com/harmony-one/harmony/common/math"
)
const jsondata = `

@ -25,10 +25,10 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/crypto"
"github.com/ethereum/go-ethereum/log"
"github.com/woop-chain/woop/accounts"
"github.com/woop-chain/woop/accounts/external"
"github.com/woop-chain/woop/accounts/keystore"
"github.com/woop-chain/woop/core/types"
"github.com/harmony-one/harmony/accounts"
"github.com/harmony-one/harmony/accounts/external"
"github.com/harmony-one/harmony/accounts/keystore"
"github.com/harmony-one/harmony/core/types"
)
// ErrNoChainID is returned whenever the user failed to specify a chain id.

@ -23,7 +23,7 @@ import (
"github.com/ethereum/go-ethereum"
"github.com/ethereum/go-ethereum/common"
"github.com/woop-chain/woop/core/types"
"github.com/harmony-one/harmony/core/types"
)
var (

@ -26,8 +26,8 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/crypto"
"github.com/ethereum/go-ethereum/event"
"github.com/woop-chain/woop/accounts/abi"
"github.com/woop-chain/woop/core/types"
"github.com/harmony-one/harmony/accounts/abi"
"github.com/harmony-one/harmony/core/types"
)
// SignerFn is a signer function callback when a contract requires a method to

@ -28,9 +28,9 @@ import (
"github.com/ethereum/go-ethereum/common/hexutil"
"github.com/ethereum/go-ethereum/crypto"
"github.com/ethereum/go-ethereum/rlp"
"github.com/woop-chain/woop/accounts/abi"
"github.com/woop-chain/woop/accounts/abi/bind"
"github.com/woop-chain/woop/core/types"
"github.com/harmony-one/harmony/accounts/abi"
"github.com/harmony-one/harmony/accounts/abi/bind"
"github.com/harmony-one/harmony/core/types"
)
type mockCaller struct {

@ -31,7 +31,7 @@ import (
"unicode"
"github.com/ethereum/go-ethereum/log"
"github.com/woop-chain/woop/accounts/abi"
"github.com/harmony-one/harmony/accounts/abi"
)
// Lang is a target programming language selector to generate bindings for.

@ -16,7 +16,7 @@
package bind
import "github.com/woop-chain/woop/accounts/abi"
import "github.com/harmony-one/harmony/accounts/abi"
// tmplData is the data structure required to fill the binding template.
type tmplData struct {

@ -25,7 +25,7 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/crypto"
"github.com/woop-chain/woop/accounts/abi"
"github.com/harmony-one/harmony/accounts/abi"
)
// makeTopics converts a filter query argument list into a filter topic set.

@ -21,7 +21,7 @@ import (
"testing"
"github.com/ethereum/go-ethereum/common"
"github.com/woop-chain/woop/accounts/abi"
"github.com/harmony-one/harmony/accounts/abi"
)
func TestMakeTopics(t *testing.T) {

@ -23,7 +23,7 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/log"
"github.com/woop-chain/woop/core/types"
"github.com/harmony-one/harmony/core/types"
)
// WaitMined waits for tx to be mined on the blockchain.

@ -23,7 +23,7 @@ import (
"reflect"
"github.com/ethereum/go-ethereum/common"
"github.com/woop-chain/woop/common/math"
"github.com/harmony-one/harmony/common/math"
)
// packBytesSlice packs the given bytes as [L, V] as the canonical representation

@ -24,7 +24,7 @@ import (
ethereum "github.com/ethereum/go-ethereum"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/event"
"github.com/woop-chain/woop/core/types"
"github.com/harmony-one/harmony/core/types"
"golang.org/x/crypto/sha3"
)

@ -1,12 +1,12 @@
package accounts
import (
"github.com/woop-chain/woop/internal/bech32"
"github.com/woop-chain/woop/internal/common"
"github.com/harmony-one/harmony/internal/bech32"
"github.com/harmony-one/harmony/internal/common"
"github.com/pkg/errors"
)
// MustBech32ToAddressH is a wrapper for casting ethCommon.Address to woop's common.Address
// MustBech32ToAddressH is a wrapper for casting ethCommon.Address to harmony's common.Address
func MustBech32ToAddressH(b32 string) common.Address {
return common.Address(common.MustBech32ToAddress(b32))
}

@ -27,9 +27,9 @@ import (
"github.com/ethereum/go-ethereum/event"
"github.com/ethereum/go-ethereum/log"
"github.com/ethereum/go-ethereum/signer/core/apitypes"
"github.com/woop-chain/woop/accounts"
"github.com/woop-chain/woop/core/types"
"github.com/woop-chain/woop/eth/rpc"
"github.com/harmony-one/harmony/accounts"
"github.com/harmony-one/harmony/core/types"
"github.com/harmony-one/harmony/eth/rpc"
)
// ExternalBackend is a struct for external backend

@ -30,9 +30,9 @@ import (
mapset "github.com/deckarep/golang-set"
"github.com/ethereum/go-ethereum/common"
"github.com/woop-chain/woop/accounts"
common2 "github.com/woop-chain/woop/internal/common"
"github.com/woop-chain/woop/internal/utils"
"github.com/harmony-one/harmony/accounts"
common2 "github.com/harmony-one/harmony/internal/common"
"github.com/harmony-one/harmony/internal/utils"
)
// Minimum amount of time between cache reloads. This limit applies if the platform does

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save