Compare commits

...

258 Commits

Author SHA1 Message Date
nico 631d384609 woop 8 months ago
Soph b3aebb62d2
Merge pull request #4546 from harmony-one/dev 9 months ago
Konstantin 2dee6c6b2e
Revert "Get only valid blocks. (#4628)" (#4637) 9 months ago
Konstantin f0dc999e1b
Get only valid blocks. (#4628) 9 months ago
Konstantin 49bba1785e
Fix. (#4635) 9 months ago
Casey Gardiner 86c4a21a6e
Merge branch 'main' into dev 9 months ago
Casey Gardiner 138a460e46
Update dev to include main hotfixes (#4633) 9 months ago
Diego Nava b53a911a7c
push devnet external and leader rotation epochs (#4634) 9 months ago
Konstantin d5956cee90
Fix for possible panic. (#4627) 9 months ago
Gheis Mohammadi 313daea3c9
[HOTFIX] fix leader crosslink issue to not include old cross link in the propo… (#4629) 9 months ago
Diego Nava ca91cb22b6
Skip check when the 100% check is achieved. (#4625) 10 months ago
Gheis Mohammadi c24ea5cebd
fix allowed txs to be able to handle multiple txs for same from address (#4624) 10 months ago
Konstantin 8d5f20f998
Removed outdated flag, additional checks and simplified logic. (#4621) 10 months ago
Gheis Mohammadi ae4ffeb09a
fix allowed txs to be able to handle multiple txs for same from address (#4623) 10 months ago
Adam Androulidakis c01cc296a8
Merge pull request #4618 from harmony-one/fix/snapshot 10 months ago
“GheisMohammadi” 0082c4d7a0
add system log for creating/loading snapshot 10 months ago
Diego Nava 0066c2e6bc
push the activation of the external devnet epoch (#4620) 10 months ago
Diego Nava fe72c4f37a
activate devnet external hardfork (#4619) 10 months ago
Konstantin f3fc63395c
Fix for revert. (#4617) 10 months ago
“GheisMohammadi” 9b42870e09
return back sync default settings 10 months ago
“GheisMohammadi” d1ffd5cc75
add cache configurations 10 months ago
“GheisMohammadi” 8d24b5beef
fix wrong root hash for generating snapshot 10 months ago
Gheis Mohammadi 2441a0b544
Fix fast sync null snapshot and null response issue (#4613) 10 months ago
Diego Nava 51a1ffe350
prepare devnet reset (#4615) 10 months ago
Konstantin 17a2522391
Recreate trie after revert. (#4608) 10 months ago
Konstantin e15bae129b
Fix for panic "insertChain failed to update current block" (#4612) 10 months ago
Konstantin cdbc79e01f
Devnet: activate leader rotation at epoch 4 . (#4611) 10 months ago
Konstantin a31b4f5640
Thread safe Decider. (#4610) 10 months ago
Konstantin 1dd67a801c
15 nodes per shard for devnet (#4607) 11 months ago
Gheis Mohammadi 00734e2f8d
closing stream removes it from stream manager as well, so it doesn't need to remove it on caller function (#4606) 11 months ago
Konstantin f57691047b
Force verify all sign. (#4601) 11 months ago
Gheis Mohammadi 50a1a75cd5
ignore known blocks for processing state sync (#4602) 11 months ago
Soph 2927929efe
Merge pull request #4600 from harmony-one/maintodev122023 11 months ago
Casey Gardiner 7df72eb488
Merge branch 'dev' into maintodev122023 11 months ago
Diego Nava 5443bf7d94
reduce internal voting power to 10% devnet (#4599) 11 months ago
Gheis Mohammadi e68b44fd98
Complete Fast Sync codes (#4594) 11 months ago
static 41066fad14 fix conflicts main->dev 11 months ago
Diego Nava 718286f622
delay for a few epochs the leader rotations devnet (#4597) 11 months ago
Konstantin d6690ed7b5
Activate external rotation devnet. (#4596) 11 months ago
Konstantin 556444cea5
Feature: last signing power. (#4584) 11 months ago
Konstantin 9a5ba3cc0b
blocksCountAliveness can't be bigger than minimumBlocksForLeaderInRow (#4589) 11 months ago
Max 8717ccf61d
rpc: fix the `from` address calculation (#4593) 11 months ago
Diego Nava dd65484d18
fix getTransactionReceipt response (#4590) 11 months ago
Max 3e7ff3839f
do not return bech32 in receipt, fix 7% fee (#4588) 11 months ago
Adam Androulidakis c82599b6f1
Merge pull request #4465 from harmony-one/feature/fastsync 12 months ago
“GheisMohammadi” 419aad1fb7
remove state debug logs 12 months ago
“GheisMohammadi” 191c55b403
fix full state sync requests cap, add error handling to stage state sync, goimports 12 months ago
“GheisMohammadi” f3ce9f3ac9
return back deleted codes, fix rebase issues, goimports 12 months ago
Diego Nava 02e2fee4db
Fix: max rate issue (#4580) 12 months ago
“GheisMohammadi” 0901e92bf8
add state sync full, complete full state sync stage 12 months ago
“GheisMohammadi” 390bdb67d8
add client new functions to stream sync adapter, update GetAccountRanges parameters 12 months ago
“GheisMohammadi” e141f79818
add ProofSet and ProofList to staged stream sync 12 months ago
“GheisMohammadi” 3374100409
fix state sync file name spell error 12 months ago
“GheisMohammadi” c340c704ba
fix GetNextBatch to complete sync after there is no more pending states,remove extra comments, cleanup and goimports 12 months ago
“GheisMohammadi” 99928257d0
add state sync 12 months ago
“GheisMohammadi” 3fcfad4531
fix rebase conflicts 12 months ago
“GheisMohammadi” 135c7da455
fix WriteHeadBlock, fix GetDownloadDetails index, improve fetching current block in a few stages, improve pivot calculation 12 months ago
“GheisMohammadi” bdd7f142c7
improve stream sync current cycle and pivot checks, fix edge case issue to insert pivot block and its receipts 12 months ago
“GheisMohammadi” c808f2b733
fix pivot block issue for write on chain 12 months ago
“GheisMohammadi” 6348128c48
improve stage handling for create new instance of staged stream sync 12 months ago
“GheisMohammadi” e4dcda67e4
refactor staged stream sync, fix the state sync functions 12 months ago
“GheisMohammadi” 9629d9ca56
remove blockExecution option from staged stream sync 12 months ago
“GheisMohammadi” 36d2abd0a4
remove extra blockExecutions 12 months ago
“GheisMohammadi” ebd689f1a0
remove blockExecution option from insertChain 12 months ago
“GheisMohammadi” e96855b6ff
fix shard chain test 12 months ago
“GheisMohammadi” d534fea261
add Validator method to blockchain to fix the interface 12 months ago
“GheisMohammadi” 7c21eef5ef
fix stream tests 12 months ago
“GheisMohammadi” 917a3019e2
add tests for node data request 12 months ago
“GheisMohammadi” 8d66bdf078
add getBlockByMaxVote to sync helper 12 months ago
“GheisMohammadi” c1d352b895
add pivot to chain accessor, add CurrentFastBlock to blockchain_impl, fix receipt insertion 12 months ago
“GheisMohammadi” 772d8658e1
fix block validation in stage bodies 12 months ago
“GheisMohammadi” cd7ccbe827
fix stages and replace with forward stages 12 months ago
“GheisMohammadi” f6b8951656
add SyncMode to flags 12 months ago
“GheisMohammadi” 12235f5c5c
fix stages forward order for staged stream sync 12 months ago
“GheisMohammadi” 6f9a1ecda1
goimports 12 months ago
“GheisMohammadi” bcf1b770a1
remove using currentCycle, cleanup stage receipts 12 months ago
“GheisMohammadi” 57a77ab0f1
refactor get receipts stage to use insertReceiptsChain 12 months ago
“GheisMohammadi” 8f818100a7
add InsertReceiptChain to blockchain interface 12 months ago
“GheisMohammadi” d4c85772e2
goimports 12 months ago
“GheisMohammadi” 7c3807a525
refactor stage bodies to extract receip hashes in this stage rather than stage state 12 months ago
“GheisMohammadi” 1f26944a33
split verifyAndInsertBlock function to be able to reuse verification part 12 months ago
“GheisMohammadi” 498bcc0416
fix state download manager failure message 12 months ago
“GheisMohammadi” f10dd1eec2
add SyncMode to configs 12 months ago
“GheisMohammadi” 30de7c27e3
refactor stages list initialization based on the sync mode 12 months ago
“GheisMohammadi” 7006e1568d
goimports staged sync files 12 months ago
“GheisMohammadi” 591f223e84
fix block insertion in main.go 12 months ago
“GheisMohammadi” 352212744d
refactor stage receipts 12 months ago
“GheisMohammadi” 9954a904ae
refactor staged stream sync to process fast sync and new block insertion 12 months ago
“GheisMohammadi” cfc94bb4e1
fix tests for new block insertion 12 months ago
“GheisMohammadi” 91034682c7
add block insertion without execution to blockchain implementation 12 months ago
“GheisMohammadi” e11b6ef122
goimports staged stream sync 12 months ago
“GheisMohammadi” 6f3aa67b88
refactor stage receipts and change the stages sorting 12 months ago
“GheisMohammadi” 12d930fd97
fix receipt download manager result queue 12 months ago
“GheisMohammadi” 0da96b942e
add receipt download manager 12 months ago
“GheisMohammadi” 975857fc85
fix state download manager tasks issue 12 months ago
“GheisMohammadi” 841073da60
refactor stage state sync 12 months ago
“GheisMohammadi” 9e1249a836
refactor state download manager 12 months ago
“GheisMohammadi” 4629fda90b
fix statesync config 12 months ago
“GheisMohammadi” 702eb5e1fb
add task management logic to state download manager in stream sync 12 months ago
“GheisMohammadi” 2064cfd62c
add protocol to stage statesync 12 months ago
“GheisMohammadi” 9ec0272261
add initial state download manager to stream sync 12 months ago
“GheisMohammadi” ca05f3f10f
add statesync as a new state to staged sync 12 months ago
Adam Androulidakis 2001b34658
Merge pull request #4582 from harmony-one/feature/HET104-12523 12 months ago
Konstantin 29c62490ce
Fix. (#4583) 12 months ago
static 3b27215e03 use v2.NewReceipt for eth type receipt 12 months ago
Konstantin 86fca2070f
Fixed infinity loop sync. (#4575) 12 months ago
Diego Nava b7123fb30e
fix: eth json transaction (#4581) 12 months ago
Konstantin 7be2b0260b
Revert "fix: max-rate bellow the era min-rate (#4552)" (#4578) 12 months ago
Diego Nava f993468325
fix: max-rate bellow the era min-rate (#4552) 12 months ago
Konstantin fe1d97a460
Removed outdated check. (#4574) 12 months ago
Konstantin b7b7fbf2b3
Skip epochchain errors. (#4573) 1 year ago
Konstantin 368fc9e07b
Removed unused functions and improved locks usage. (#4572) 1 year ago
Konstantin 1f974af163
Removed fast block. (#4571) 1 year ago
Konstantin 78685f9ffa
Removed future blocks from blockchain_impl.go (#4569) 1 year ago
Gheis Mohammadi 6eda7857d0
fix the issue of adding an existed block in legacy sync (#4565) 1 year ago
Konstantin 582a4cf5cb
Fixed panic with dsync. (#4562) 1 year ago
omahs 8f774ea9cd
Fix typos (#4563) 1 year ago
Konstantin 2089a0c25b
Fixed import and workaround for failing test. (#4560) 1 year ago
Konstantin dbe4d43b36
Timeout for block proposal. (#4553) 1 year ago
Konstantin 6f7a04799d
Fixed data race. (#4559) 1 year ago
Konstantin 1f7d67859d
Refactored verify block. (#4554) 1 year ago
Konstantin b187cd7e44
Deadcode and cleanup. (#4550) 1 year ago
Konstantin 3167545f66
Cleanup (#4548) 1 year ago
Konstantin 4b8cf56055
Leader rotation. Check next leader aliveness. (#4359) 1 year ago
Konstantin e124173a81
Cleanup. (#4547) 1 year ago
Konstantin f24413e683
Merge pull request #4455 from Frozen/block-peers 1 year ago
frozen dc326f6fb2
Rebased. 1 year ago
frozen 64d7392c3b
Clean up. 1 year ago
frozen 96e03868ae
Fixed imports. 1 year ago
frozen 6179450507
Fixed imports. 1 year ago
frozen f0b70d9f71
Fixed imports. 1 year ago
frozen 41900b0400
Rebased onto dev. 1 year ago
frozen 82b3f0ceda
Updated. 1 year ago
frozen a6ddc19fed
Implemented method for interface. 1 year ago
frozen 0e4568253a
Passed peerID to handlers. 1 year ago
frozen 525b20ae20
Start and finish syncing. 1 year ago
frozen b6987ec68f
Added logs. 1 year ago
frozen c63818480c
Added logs. 1 year ago
frozen fad17fe539
Added logs. 1 year ago
frozen 2f23d81879
Last mile blocks insert. 1 year ago
Konstantin b1389dacc4
Fixed data race. (#4544) 1 year ago
Konstantin 57dd5f2678
Fixed. (#4543) 1 year ago
Gheis Mohammadi d49715e8f7
add new functions to p2p stream client for sharing the full states (#4540) 1 year ago
Konstantin 5faeb5f79a
Call `UpdateConsensusInformation` after bingo. (#4542) 1 year ago
UncertainBadg3r a65f92d0ae
Fix typo in README test steps (#4541) 1 year ago
Konstantin da863bf04c
Fixed memory leak and deadcode. (#4539) 1 year ago
Soph 2bba333bf2
Merge pull request #4500 from harmony-one/dev 1 year ago
Konstantin 163365625c
Rotation fix and update. (#4516) 1 year ago
Konstantin 9f5768a799
Flush data. (#4536) 1 year ago
Konstantin 0d402e4d2c
Updated go lib p2p deps. (#4538) 1 year ago
Konstantin cf5dd8b5fb
Revert improvements. (#4520) 1 year ago
Diego Nava 370d122dbd
make peer connected/disconnected debug log level (#4537) 1 year ago
Gheis Mohammadi ae578ba998
update deprecated ioutil, improve local accounts (#4527) 1 year ago
Gheis Mohammadi ce2c057a64
fix decryptRaw issue for nil/empty data (#4532) 1 year ago
Konstantin 1adea06a5b
Fixed lru cache size. (#4535) 1 year ago
Diego Nava b143085c2d
fix preimage import bugs (#4529) 1 year ago
Diego Nava 88e033af4f
enable hip30 and gas30m epoch for mainnet (#4528) 1 year ago
Diego Nava d2743d9cc8
enable hip30 epoch for testnet (#4526) 1 year ago
Soph e1338060ad
add hip30 testing for devnet/partner network (#4525) 1 year ago
Diego Nava 3f6a0db28e
use new(big.Int) so we don't modify the epoch value (#4523) 1 year ago
Soph 2378b2d880
Merge pull request #4503 from harmony-one/hip30/testing 1 year ago
Gheis Mohammadi ce0f483289
add GetNodeData tests for stream client, increase nodes and receipts cap (#4519) 1 year ago
Diego Nava abf9dba3b7
reduce the epoch time for devnet to 30 min (#4522) 1 year ago
Soph 171e612fc4
reset devnet and set 30M epoch for all network except mainnet/testnet (#4517) 1 year ago
Adam Androulidakis 532e28f684
Merge pull request #4518 from harmony-one/fix/duplicate_def 1 year ago
“GheisMohammadi” 0252bd7ad4
fix duplicate function def 1 year ago
Gheis Mohammadi fa99cd1959
Improvements of streamsync to deploy on mainnet (#4493) 1 year ago
Konstantin d8f122538b
1) Removed unused worker (#4512) 1 year ago
Soph 7111b92b31
aggregate the recovery multisig reward (#4514) 1 year ago
Diego Nava a9077c9f33
Merge pull request #4513 from harmony-one/hip30/add-prometheus-metrics 1 year ago
Diego Nava 215bb10a29
minnor fixes 1 year ago
Diego Nava 5e1f4820f3
add shard label 1 year ago
Diego Nava 83d5104cc9
flush the db every export and verify 1 year ago
Diego Nava 8335523ac7
register the verified address 1 year ago
Diego Nava 6b476a1272
correct the starting block 1 year ago
Diego Nava 0fadfe3e18
send the verified preimages 1 year ago
Diego Nava 8824e42136
send metrics on node start 1 year ago
Diego Nava 8b6df6b449
verify root hashes after commit 1 year ago
Konstantin e20524267e
Merge pull request #4510 from Frozen/hip30/testing-minor-fixes 1 year ago
Diego Nava fcbe6c96c1
commit preimages 1 year ago
Diego Nava 9c84d1c31d
commit preimages 1 year ago
Diego Nava 270645155a
write preimages on process 1 year ago
Diego Nava 9586553f5e
add verify preimages rpc method 1 year ago
Diego Nava cdcae9ac12
reduce the block number count 1 year ago
frozen ccc9252c75
Fixes. 1 year ago
Diego Nava 1eb1cc4876
pass the correct config 1 year ago
Diego Nava ff86c5734b
pass the correct config 1 year ago
Diego Nava 68cb005dc3
merge fixes 1 year ago
Diego Nava 51ed6b6b40
Merge branch 'dev' into hip30/testing 1 year ago
Gheis Mohammadi 018c33693a
fix getReceipts rpc issue (#4511) 1 year ago
Diego Nava aa0ad97a18
add testing fmt 1 year ago
Diego Nava 6428430446
use the updated state in case there is one 1 year ago
Diego Nava 924d1336f1
use the updated state in case there is one 1 year ago
Diego Nava 310b4cd5d8
roll back changes 1 year ago
Diego Nava 013043610a
create the sate as the insertchain does 1 year ago
Diego Nava 9a5900d524
create the sate as the insertchain does 1 year ago
Soph ed08ff34de
Hip30 : localnet account migration fix (#4508) 1 year ago
Konstantin 74ede04a4c
Block gas 30m. (#4501) 1 year ago
Konstantin 29d46b9a14
Fixed imports. (#4507) 1 year ago
Diego Nava 2890d84c25
remove unused fmt 1 year ago
Diego Nava 445d8e3a6a
rename variable 1 year ago
Diego Nava 343058a24f
remove double import 1 year ago
Konstantin c2bf8de48f
Hip30 balance migration with fix. (#4502) 1 year ago
Max 688b9335da
HIP-30: Balance migration (#4499) 1 year ago
Konstantin 6d65d11ac5
Small improvements. (#4477) 1 year ago
Konstantin b798df0c06
Fix for index. (#4504) 1 year ago
Max 115e434f73
HIP-30: Shard reduction (#4498) 1 year ago
Max 14eba6e8a9
HIP-30: Set up pre-image generation, recording, export and import (#4494) 1 year ago
Max 0c981ff0d2
HIP-30: Emission split (#4497) 1 year ago
Max 62feec962b
HIP-30: minimum validator commission of 7% (#4496) 1 year ago
Max 083eef4eed
HIP-30 Boilerplate (#4495) 1 year ago
Konstantin 8c206529f6
Next validator in view change. (#4492) 1 year ago
Konstantin 9f1576fa17
Fixed debug run for mac. (#4484) 1 year ago
Casey Gardiner 1b9614ba24
Merge pull request #4487 from harmony-one/dev 1 year ago
Konstantin fa00cd143d
Keep rotation meta in memory. (#4459) 1 year ago
Gheis Mohammadi b093fea169
Improve staged stream sync, fix the devnet node stuck issue (#4467) 1 year ago
Soph 764474acae
[build] add mergify rules (#4486) 1 year ago
Casey Gardiner 858c36bd55
Merge pull request #4483 from harmony-one/fix/golibp2p_core_update 1 year ago
Casey Gardiner fa9546d20a
Merge pull request #4482 from diego1q2w/disable-go-test-v-dev 1 year ago
Casey Gardiner 99bb6326b7
Merge pull request #4474 from harmony-one/fix/consensus_catchup 1 year ago
“GheisMohammadi” 8b801ab249
goimports 1 year ago
“GheisMohammadi” ad3ebe0693
update deprecated go-libp2p packages 1 year ago
“GheisMohammadi” a5634ed866
fix issue from runnig sync loop while stream sync is runing 1 year ago
“GheisMohammadi” cfa06d413e
fix consensus catchup issue 1 year ago
Max 53c2e66ec6
Merge pull request #4479 from harmony-one/dev 1 year ago
Diego Nava 88d8dd6cd4
disable go test verbose flag 1 year ago
Soph 944b8c73d0
[build] upgrade docker in travis using addons (#4481) 1 year ago
Max 497871620a
build: auto accept repository addition (#4480) 1 year ago
Soph 324063c2b2
[build] upgrade docker in travis build to latest (#4478) 1 year ago
Max ee8a8884ce
statedb: return correct validator code size (#4475) 1 year ago
Casey Gardiner 066efff7e8
Merge pull request #4472 from Frozen/fix/remove-dht 1 year ago
frozen 878da2d165
Remove dht dir before start. 1 year ago
Casey Gardiner 65e5cc277c
Merge pull request #4470 from harmony-one/dev 1 year ago
Konstantin 0e4b629fbe
Consensus Mask. Removed unnecessary argument. (#4466) 1 year ago
Konstantin 8656c7ae81
Fixed concurrent map access. (#4469) 1 year ago
Casey Gardiner 9966c4241b
Merge pull request #4464 from harmony-one/fix/travis_test 1 year ago
Casey Gardiner ae8348fd55
Merge pull request #4452 from harmony-one/feature/statesync_client 1 year ago
“GheisMohammadi” 524f98189d
remove redundant lines, travis already has the latest changes in target branch 1 year ago
“GheisMohammadi” 98871365bf
fix travis checker path issue 1 year ago
Casey Gardiner dfb0c63ac2
Merge pull request #4463 from harmony-one/fix/killnode 1 year ago
“GheisMohammadi” 5b636f2bad
fix kill_node script 1 year ago
“GheisMohammadi” 985332e558
fix client tests for GetReceipts 1 year ago
“GheisMohammadi” a4d6ffc0e0
refactor client GetReceipts to be able to fetch array of multiple receipts 1 year ago
Casey Gardiner c7a63bab8d
Merge pull request #4461 from harmony-one/dev 1 year ago
Soph 4a69714c37
[ops] Harmony Dockerfile go1.19 upgrade (#4460) 1 year ago
Max 12192e5d64
internal/params: schedule HIP28 and val code fix (#4456) 1 year ago
“GheisMohammadi” 9d3244612f
add new client functions to adapter as well 1 year ago
“GheisMohammadi” 656237ec93
fix client comments 1 year ago
“GheisMohammadi” 7f131d84ce
add tests for client new functionalities and fix the receipt and node data functions in protocol 1 year ago
“GheisMohammadi” ba6e516072
fix the issue of go generate changed working tree contents 1 year ago
“GheisMohammadi” aa58cff012
goimports 1 year ago
“GheisMohammadi” 2ca061c800
initial version of client with required state sync functionalities 1 year ago
Casey Gardiner 7ad50af5da
Merge pull request #4458 from harmony-one/dev 1 year ago
Max 9df6215ab2
scripts: restore install_build_tools.sh (#4457) 1 year ago
Casey Gardiner 3d8d4557f7
Merge pull request #4437 from harmony-one/dev 1 year ago
Max 32e591358e
rpc: add `net_listening` function (#4446) 1 year ago
Soph 21b4988668
[github action] build and push harmony proto docker image (#4453) 1 year ago
Max d1f986ffa5
build: update base distribution in Travis (#4451) 1 year ago
  1. 28
      .github/ISSUE_TEMPLATE/bounty.md
  2. 35
      .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/blspass.txt
  26. 1
      .hmy/c4e4708b6cf2a2ceeb59981677e9821eebafc5cf483fb5364a28fa604cc0ce69beeed40f3f03815c9e196fdaec5f1097.key
  27. 1
      .hmy/ca86e551ee42adaaa6477322d7db869d3e203c00d7b86c82ebee629ad79cb6d57b8f3db28336778ec2180e56a8e07296.key
  28. 1
      .hmy/e751ec995defe4931273aaebcb2cd14bf37e629c554a57d3f334c37881a34a6188a93e76113c55ef3481da23b7d7ab09.key
  29. 1
      .hmy/eca09c1808b729ca56f1b5a6a287c6e1c3ae09e29ccf7efa35453471fcab07d9f73cee249e2b91f5ee44eb9618be3904.key
  30. 1
      .hmy/ee2474f93cba9241562efc7475ac2721ab0899edf8f7f115a656c0c1f9ef8203add678064878d174bb478fa2e6630502.key
  31. 1
      .hmy/f47238daef97d60deedbde5302d05dea5de67608f11f406576e363661f7dcbc4a1385948549b31a6c70f6fde8a391486.key
  32. 1
      .hmy/fc4b9c535ee91f015efff3f32fbb9d32cdd9bfc8a837bb3eee89b8fff653c7af2050a4e147ebe5c7233dc2d5df06ee0a.key
  33. 59
      .mergify.yml
  34. 2
      .rpmmacros
  35. 27
      .travis.yml
  36. 0
      .wiki/blacklist.txt
  37. 0
      .wiki/extbls/4f41a37a3a8d0695dd6edcc58142c6b7d98e74da5c90e79b587b3b960b6a4f5e048e6d8b8a000d77a478d44cd640270c.key
  38. 0
      .wiki/extbls/4f41a37a3a8d0695dd6edcc58142c6b7d98e74da5c90e79b587b3b960b6a4f5e048e6d8b8a000d77a478d44cd640270c.pass
  39. 0
      .wiki/extbls/5a18d4aa3e6aff4835f07588ae66be19684476d38799f63e54c6b5732fad1e86dce7458b1c295404fb54a0d61e50bb97.key
  40. 0
      .wiki/extbls/5a18d4aa3e6aff4835f07588ae66be19684476d38799f63e54c6b5732fad1e86dce7458b1c295404fb54a0d61e50bb97.pass
  41. 0
      .wiki/extbls/7dcc035a943e29e17959dabe636efad7303d2c6f273ace457ba9dcc2fd19d3f37e70ba1cd8d082cf8ff7be2f861db48c.key
  42. 0
      .wiki/extbls/7dcc035a943e29e17959dabe636efad7303d2c6f273ace457ba9dcc2fd19d3f37e70ba1cd8d082cf8ff7be2f861db48c.pass
  43. 0
      .wiki/extbls/81296eedba05047594385e3086e1dab52c9eb9e56f46d86f58447cccc20535d646120171961d74968d27a2ec0f8af285.key
  44. 0
      .wiki/extbls/81296eedba05047594385e3086e1dab52c9eb9e56f46d86f58447cccc20535d646120171961d74968d27a2ec0f8af285.pass
  45. 0
      .wiki/extbls/89eab762e7364d6cf89f7a6c54da794f74eba2e29147992ac66adcef0f0654ef8a727710ee55ad8b532da0dd87811915.key
  46. 0
      .wiki/extbls/89eab762e7364d6cf89f7a6c54da794f74eba2e29147992ac66adcef0f0654ef8a727710ee55ad8b532da0dd87811915.pass
  47. 0
      .wiki/extbls/b0917378b179a519a5055259c4f8980cce37d58af300b00dd98b07076d3d9a3b16c4a55f84522f553872225a7b1efc0c.key
  48. 0
      .wiki/extbls/b0917378b179a519a5055259c4f8980cce37d58af300b00dd98b07076d3d9a3b16c4a55f84522f553872225a7b1efc0c.pass
  49. 0
      .wiki/extkeystore/one17ughrllgnzx9sfa46p568k8rdmtz7qj85slc6t.key
  50. 0
      .wiki/extkeystore/one19aw2wcr5y4lxeuwt0ajgt5aw3a3qkjdgg67ygj.key
  51. 0
      .wiki/extkeystore/one19zzwsxr0uf2fe34y8qkadek2v0eh6h5mg2deg6.key
  52. 0
      .wiki/extkeystore/one1auqndgthqu5lznsn7tuma8s5333cq0y07cwc6x.key
  53. 0
      .wiki/extkeystore/one1eenp9ujcrmyaq22ef6jrpry2k97tjz4xs6ppcf.key
  54. 0
      .wiki/extkeystore/one1lctumupg2y009pjmnhnmn4nqjk0zf0dspjanf7.key
  55. 0
      .wiki/keystore/one103q7qe5t2505lypvltkqtddaef5tzfxwsse4z7.key
  56. 0
      .wiki/keystore/one129r9pj3sk0re76f7zs3qz92rggmdgjhtwge62k.key
  57. 0
      .wiki/keystore/one12fuf7x9rgtdgqg7vgq0962c556m3p7afsxgvll.key
  58. 0
      .wiki/keystore/one1658znfwf40epvy7e46cqrmzyy54h4n0qa73nep.key
  59. 0
      .wiki/keystore/one16qsd5ant9v94jrs89mruzx62h7ekcfxmduh2rx.key
  60. 0
      .wiki/keystore/one1a0x3d6xpmr6f8wsyaxd9v36pytvp48zckswvv9.key
  61. 0
      .wiki/keystore/one1a50tun737ulcvwy0yvve0pvu5skq0kjargvhwe.key
  62. 0
      .wiki/keystore/one1d2rngmem4x2c6zxsjjz29dlah0jzkr0k2n88wc.key
  63. 0
      .wiki/keystore/one1d7jfnr6yraxnrycgaemyktkmhmajhp8kl0yahv.key
  64. 0
      .wiki/keystore/one1est2gxcvavmtnzc7mhd73gzadm3xxcv5zczdtw.key
  65. 0
      .wiki/keystore/one1ghkz3frhske7emk79p7v2afmj4a5t0kmjyt4s5.key
  66. 0
      .wiki/keystore/one1ljznytjyn269azvszjlcqvpcj6hjm822yrcp2e.key
  67. 0
      .wiki/keystore/one1m6m0ll3q7ljdqgmth2t5j7dfe6stykucpj2nr5.key
  68. 0
      .wiki/keystore/one1p7ht2d4kl8ve7a8jxw746yfnx4wnfxtp8jqxwe.key
  69. 0
      .wiki/keystore/one1pdv9lrdwl0rg5vglh4xtyrv3wjk3wsqket7zxy.key
  70. 0
      .wiki/keystore/one1pf75h0t4am90z8uv3y0dgunfqp4lj8wr3t5rsp.key
  71. 0
      .wiki/keystore/one1r4zyyjqrulf935a479sgqlpa78kz7zlcg2jfen.key
  72. 0
      .wiki/keystore/one1spshr72utf6rwxseaz339j09ed8p6f8ke370zj.key
  73. 0
      .wiki/keystore/one1uyshu2jgv8w465yc8kkny36thlt2wvel89tcmg.key
  74. 0
      .wiki/keystore/one1z05g55zamqzfw9qs432n33gycdmyvs38xjemyl.key
  75. 0
      .wiki/locals.txt
  76. 0
      .wiki/pgp_keys.asc
  77. 0
      .wiki/rosetta_local_fix.csv
  78. 0
      .wiki/wallet.ini
  79. 2
      BLACKLIST.md
  80. 2
      CODE_OF_CONDUCT.md
  81. 10
      CONTRIBUTING.md
  82. 34
      Dockerfile
  83. 4
      FLA.md
  84. 71
      Makefile
  85. 81
      README.md
  86. 2
      SECURITY.md
  87. 2
      accounts/abi/abi_test.go
  88. 13
      accounts/abi/bind/auth.go
  89. 2
      accounts/abi/bind/backend.go
  90. 4
      accounts/abi/bind/base.go
  91. 6
      accounts/abi/bind/base_test.go
  92. 2
      accounts/abi/bind/bind.go
  93. 2
      accounts/abi/bind/template.go
  94. 2
      accounts/abi/bind/topics.go
  95. 2
      accounts/abi/bind/topics_test.go
  96. 2
      accounts/abi/bind/util.go
  97. 2
      accounts/abi/pack.go
  98. 2
      accounts/accounts.go
  99. 6
      accounts/address.go
  100. 6
      accounts/external/backend.go
  101. Some files were not shown because too many files have changed in this diff Show More

@ -1,28 +0,0 @@
---
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

@ -0,0 +1,35 @@
name: Build and Push woop proto Docker Image
on:
workflow_dispatch:
jobs:
build_and_push:
runs-on: ubuntu-latest
steps:
- name: Checkout woop core code
uses: actions/checkout@v3
with:
path: woop
ref: ${{ github.ref }}
fetch-depth: 0
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to DockerHub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- 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
push: true
platforms: linux/amd64,linux/arm64
tags: |
woopchain/woop-proto:latest

@ -1,4 +1,4 @@
name: Manual release harmony (need tag)
name: Manual release woop (need tag)
on:
workflow_dispatch:
@ -16,10 +16,10 @@ jobs:
tag_annotated: ${{ steps.check-tag-annotated.outputs.tag_annotated }}
steps:
- name: Checkout harmony core code
- name: Checkout woop core code
uses: actions/checkout@v3
with:
path: harmony
path: woop
ref: ${{ github.event.inputs.tag }}
fetch-depth: 0
@ -33,10 +33,10 @@ jobs:
else
echo "::set-output name=tag_annotated::false"
fi
working-directory: harmony
working-directory: woop
build:
name: Build harmony binary
name: Build woop 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: harmony-one/mcl
repository: woop-chain/mcl
path: mcl
- name: Checkout dependence repo
uses: actions/checkout@v3
with:
repository: harmony-one/bls
repository: woop-chain/bls
path: bls
- name: Checkout harmony core code
- name: Checkout woop core code
uses: actions/checkout@v3
with:
path: harmony
path: woop
ref: ${{ github.event.inputs.tag }}
fetch-depth: 0
- name: Set up Go go.mod
uses: actions/setup-go@v3
with:
go-version-file: 'harmony/go.mod'
go-version-file: 'woop/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: harmony
working-directory: woop
- name: Build harmony binary and packages for Linux
- name: Build woop 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 Harmony (harmony.one)" >> $HOME/.rpmmacros
echo %_signature gpg >> $HOME/.rpmmacros && echo "%_gpg_name Woop (wikiwoop.com)" >> $HOME/.rpmmacros
make rpm
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
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
- name: Build harmony binary and packages for Linux on ARM64
- name: Build woop binary and packages for Linux on ARM64
if: join(matrix.os, '-') == 'self-hosted-linux-ARM64'
run: |
make linux_static
mv ./bin/harmony ./bin/harmony-arm64
working-directory: harmony
mv ./bin/woop ./bin/woop-arm64
working-directory: woop
- name: Build harmony binary and packages for MacOS
- name: Build woop 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 harmony
zip -qr ./harmony-macos.zip ./*
rm -rf `ls * | egrep -v harmony-macos.zip`
working-directory: harmony
gpg --detach-sign woop
zip -qr ./woop-macos.zip ./*
rm -rf `ls * | egrep -v woop-macos.zip`
working-directory: woop
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: harmony
path: harmony/bin/*
name: woop
path: woop/bin/*
retention-days: 1
docker-build:
name: Build and push harmony docker image
name: Build and push woop docker image
needs: [check, build]
runs-on: ubuntu-22.04
if: needs.check.outputs.tag_annotated == 'true'
steps:
- name: Checkout harmony core code
- name: Checkout woop core code
uses: actions/checkout@v3
with:
path: harmony
path: woop
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: harmony
working-directory: woop
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: harmony
name: woop
- name: Build preview works
run: |
mv $GITHUB_WORKSPACE/harmony-amd64 ./scripts/docker/harmony
working-directory: harmony
mv $GITHUB_WORKSPACE/woop-amd64 ./scripts/docker/woop
working-directory: woop
- 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: ./harmony/scripts/docker
file: ./harmony/scripts/docker/Dockerfile
context: ./woop/scripts/docker
file: ./woop/scripts/docker/Dockerfile
push: true
tags: |
harmonyone/harmony:${{ github.event.inputs.tag }}
harmonyone/harmony:${{ env.build_version }}-${{ env.build_release }}
woopchain/woop:${{ github.event.inputs.tag }}
woopchain/woop:${{ 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 harmony core code
- name: Checkout woop core code
uses: actions/checkout@v3
with:
path: harmony
path: woop
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: harmony
working-directory: woop
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: harmony
name: woop
- name: Signed amd64 harmony binary
- name: Signed amd64 woop binary
run: |
gpg --detach-sign harmony-amd64
sha256sum harmony-amd64 >> harmony-amd64.sha256
gpg --detach-sign woop-amd64
sha256sum woop-amd64 >> woop-amd64.sha256
- name: Signed arm64 harmony binary
- name: Signed arm64 woop binary
run: |
gpg --detach-sign harmony-arm64
sha256sum harmony-arm64 >> harmony-arm64.sha256
gpg --detach-sign woop-arm64
sha256sum woop-arm64 >> woop-arm64.sha256
- name: Signed amd64 harmony binary
- name: Signed amd64 woop binary
run: |
shasum -a 256 harmony-macos.zip >> harmony-macos.zip.sha256
shasum -a 256 woop-macos.zip >> woop-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: harmony
working-directory: woop
- name: Create Release
id: create_release
@ -242,114 +242,114 @@ jobs:
release_name: Mainnet Release ${{ env.build_version }}
draft: true
prerelease: false
body_path: ./harmony/tag_message.md
body_path: ./woop/tag_message.md
- name: Upload harmony binary for Linux
- name: Upload woop 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: ./harmony-amd64
asset_name: harmony
asset_path: ./woop-amd64
asset_name: woop
asset_content_type: application/octet-stream
- name: Upload harmony deb package for Linux
- name: Upload woop 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: ./harmony-${{ env.build_version }}-${{ env.build_release }}.deb
asset_name: harmony-${{ env.build_version }}.deb
asset_path: ./woop-${{ env.build_version }}-${{ env.build_release }}.deb
asset_name: woop-${{ env.build_version }}.deb
asset_content_type: application/x-deb
- name: Upload harmony rpm package for Linux
- name: Upload woop 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: ./harmony-${{ env.build_version }}-${{ env.build_release }}.x86_64.rpm
asset_name: harmony-${{ env.build_version }}.x86_64.rpm
asset_path: ./woop-${{ env.build_version }}-${{ env.build_release }}.x86_64.rpm
asset_name: woop-${{ env.build_version }}.x86_64.rpm
asset_content_type: application/x-rpm
- name: Upload harmony amd64 binary for Linux
- name: Upload woop 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: ./harmony-amd64
asset_name: harmony-amd64
asset_path: ./woop-amd64
asset_name: woop-amd64
asset_content_type: application/octet-stream
- name: Upload sha256 signature of harmony amd64 binary for Linux
- name: Upload sha256 signature of woop 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: ./harmony-amd64.sha256
asset_name: harmony-amd64.sha256
asset_path: ./woop-amd64.sha256
asset_name: woop-amd64.sha256
asset_content_type: text/plain
- name: Upload gpg signature of harmony amd64 binary for Linux
- name: Upload gpg signature of woop 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: ./harmony-amd64.sig
asset_name: harmony-amd64.sig
asset_path: ./woop-amd64.sig
asset_name: woop-amd64.sig
asset_content_type: application/octet-stream
- name: Upload harmony arm64 binary for Linux
- name: Upload woop 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: ./harmony-arm64
asset_name: harmony-arm64
asset_path: ./woop-arm64
asset_name: woop-arm64
asset_content_type: application/octet-stream
- name: Upload sha256 signature of harmony arm64 binary for Linux
- name: Upload sha256 signature of woop 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: ./harmony-arm64.sha256
asset_name: harmony-arm64.sha256
asset_path: ./woop-arm64.sha256
asset_name: woop-arm64.sha256
asset_content_type: text/plain
- name: Upload gpg signature of harmony arm64 binary for Linux
- name: Upload gpg signature of woop 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: ./harmony-arm64.sig
asset_name: harmony-arm64.sig
asset_path: ./woop-arm64.sig
asset_name: woop-arm64.sig
asset_content_type: application/octet-stream
- name: Upload harmony binary for MacOS
- name: Upload woop 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: ./harmony-macos.zip
asset_name: harmony-macos-${{ env.build_version }}.zip
asset_path: ./woop-macos.zip
asset_name: woop-macos-${{ env.build_version }}.zip
asset_content_type: application/zip
- name: Upload sha256 signature of harmony for MacOS
- name: Upload sha256 signature of woop 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: ./harmony-macos.zip.sha256
asset_name: harmony-macos.zip.sha256
asset_path: ./woop-macos.zip.sha256
asset_name: woop-macos.zip.sha256
asset_content_type: text/plain

@ -1,4 +1,4 @@
name: release harmony
name: release woop
on:
push:
@ -14,10 +14,10 @@ jobs:
tag_annotated: ${{ steps.check-tag-annotated.outputs.tag_annotated }}
steps:
- name: Checkout harmony core code
- name: Checkout woop core code
uses: actions/checkout@v3
with:
path: harmony
path: woop
ref: ${{ github.ref }}
fetch-depth: 0
@ -31,10 +31,10 @@ jobs:
else
echo "::set-output name=tag_annotated::false"
fi
working-directory: harmony
working-directory: woop
build:
name: Build harmony binary
name: Build woop 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: harmony-one/mcl
repository: woop-chain/mcl
path: mcl
- name: Checkout dependence repo
uses: actions/checkout@v3
with:
repository: harmony-one/bls
repository: woop-chain/bls
path: bls
- name: Checkout harmony core code
- name: Checkout woop core code
uses: actions/checkout@v3
with:
path: harmony
path: woop
ref: ${{ github.ref }}
fetch-depth: 0
- name: Set up Go with go.mod
uses: actions/setup-go@v3
with:
go-version-file: 'harmony/go.mod'
go-version-file: 'woop/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: harmony
working-directory: woop
- name: Build harmony binary and packages for Linux
- name: Build woop 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 Harmony (harmony.one)" >> $HOME/.rpmmacros
echo %_signature gpg >> $HOME/.rpmmacros && echo "%_gpg_name Woop (wikiwoop.com)" >> $HOME/.rpmmacros
make rpm
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
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
- name: Build harmony binary and packages for Linux
- name: Build woop binary and packages for Linux
if: join(matrix.os, '-') == 'self-hosted-linux-ARM64'
run: |
make linux_static
mv ./bin/harmony ./bin/harmony-arm64
working-directory: harmony
mv ./bin/woop ./bin/woop-arm64
working-directory: woop
- name: Build harmony binary and packages for MacOS
- name: Build woop 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 harmony
zip -qr ./harmony-macos.zip ./*
rm -rf `ls * | egrep -v harmony-macos.zip`
working-directory: harmony
gpg --detach-sign woop
zip -qr ./woop-macos.zip ./*
rm -rf `ls * | egrep -v woop-macos.zip`
working-directory: woop
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: harmony
path: harmony/bin/*
name: woop
path: woop/bin/*
retention-days: 1
docker-build:
name: Build and push harmony docker image
name: Build and push woop docker image
needs: [check, build]
runs-on: ubuntu-22.04
if: needs.check.outputs.tag_annotated == 'true'
steps:
- name: Checkout harmony core code
- name: Checkout woop core code
uses: actions/checkout@v3
with:
path: harmony
path: woop
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: harmony
working-directory: woop
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: harmony
name: woop
- name: Build preview works
run: |
mv $GITHUB_WORKSPACE/harmony-amd64 ./scripts/docker/harmony
working-directory: harmony
mv $GITHUB_WORKSPACE/woop-amd64 ./scripts/docker/woop
working-directory: woop
- 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: ./harmony/scripts/docker
file: ./harmony/scripts/docker/Dockerfile
context: ./woop/scripts/docker
file: ./woop/scripts/docker/Dockerfile
push: true
tags: |
harmonyone/harmony:latest
harmonyone/harmony:${{ env.build_version }}-${{ env.build_release }}
woopchain/woop:latest
woopchain/woop:${{ 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 harmony core code
- name: Checkout woop core code
uses: actions/checkout@v3
with:
path: harmony
path: woop
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: harmony
working-directory: woop
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: harmony
name: woop
- name: Signed amd64 harmony binary
- name: Signed amd64 woop binary
run: |
gpg --detach-sign harmony-amd64
sha256sum harmony-amd64 >> harmony-amd64.sha256
gpg --detach-sign woop-amd64
sha256sum woop-amd64 >> woop-amd64.sha256
- name: Signed arm64 harmony binary
- name: Signed arm64 woop binary
run: |
gpg --detach-sign harmony-arm64
sha256sum harmony-arm64 >> harmony-arm64.sha256
gpg --detach-sign woop-arm64
sha256sum woop-arm64 >> woop-arm64.sha256
- name: Signed amd64 harmony binary
- name: Signed amd64 woop binary
run: |
shasum -a 256 harmony-macos.zip >> harmony-macos.zip.sha256
shasum -a 256 woop-macos.zip >> woop-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: harmony
working-directory: woop
- name: Create Release
id: create_release
@ -244,114 +244,114 @@ jobs:
release_name: Mainnet Release ${{ env.build_version }}
draft: true
prerelease: false
body_path: ./harmony/tag_message.md
body_path: ./woop/tag_message.md
- name: Upload harmony binary for Linux
- name: Upload woop 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: ./harmony-amd64
asset_name: harmony
asset_path: ./woop-amd64
asset_name: woop
asset_content_type: application/octet-stream
- name: Upload harmony deb package for Linux
- name: Upload woop 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: ./harmony-${{ env.build_version }}-${{ env.build_release }}.deb
asset_name: harmony-${{ env.build_version }}.deb
asset_path: ./woop-${{ env.build_version }}-${{ env.build_release }}.deb
asset_name: woop-${{ env.build_version }}.deb
asset_content_type: application/x-deb
- name: Upload harmony rpm package for Linux
- name: Upload woop 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: ./harmony-${{ env.build_version }}-${{ env.build_release }}.x86_64.rpm
asset_name: harmony-${{ env.build_version }}.x86_64.rpm
asset_path: ./woop-${{ env.build_version }}-${{ env.build_release }}.x86_64.rpm
asset_name: woop-${{ env.build_version }}.x86_64.rpm
asset_content_type: application/x-rpm
- name: Upload harmony amd64 binary for Linux
- name: Upload woop 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: ./harmony-amd64
asset_name: harmony-amd64
asset_path: ./woop-amd64
asset_name: woop-amd64
asset_content_type: application/octet-stream
- name: Upload sha256 signature of harmony amd64 binary for Linux
- name: Upload sha256 signature of woop 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: ./harmony-amd64.sha256
asset_name: harmony-amd64.sha256
asset_path: ./woop-amd64.sha256
asset_name: woop-amd64.sha256
asset_content_type: text/plain
- name: Upload gpg signature of harmony amd64 binary for Linux
- name: Upload gpg signature of woop 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: ./harmony-amd64.sig
asset_name: harmony-amd64.sig
asset_path: ./woop-amd64.sig
asset_name: woop-amd64.sig
asset_content_type: application/octet-stream
- name: Upload harmony arm64 binary for Linux
- name: Upload woop 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: ./harmony-arm64
asset_name: harmony-arm64
asset_path: ./woop-arm64
asset_name: woop-arm64
asset_content_type: application/octet-stream
- name: Upload sha256 signature of harmony arm64 binary for Linux
- name: Upload sha256 signature of woop 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: ./harmony-arm64.sha256
asset_name: harmony-arm64.sha256
asset_path: ./woop-arm64.sha256
asset_name: woop-arm64.sha256
asset_content_type: text/plain
- name: Upload gpg signature of harmony arm64 binary for Linux
- name: Upload gpg signature of woop 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: ./harmony-arm64.sig
asset_name: harmony-arm64.sig
asset_path: ./woop-arm64.sig
asset_name: woop-arm64.sig
asset_content_type: application/octet-stream
- name: Upload harmony binary for MacOS
- name: Upload woop 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: ./harmony-macos.zip
asset_name: harmony-macos-${{ env.build_version }}.zip
asset_path: ./woop-macos.zip
asset_name: woop-macos-${{ env.build_version }}.zip
asset_content_type: application/zip
- name: Upload sha256 signature of harmony for MacOS
- name: Upload sha256 signature of woop 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: ./harmony-macos.zip.sha256
asset_name: harmony-macos.zip.sha256
asset_path: ./woop-macos.zip.sha256
asset_name: woop-macos.zip.sha256
asset_content_type: text/plain

10
.gitignore vendored

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

@ -1 +0,0 @@
e859f90f6cb272e078c5601ba6f921e53a881422928b10240aa50c5868af3db6f4fbbb30d91b232a8c0a1000355b8da9b510c0bb6eea36ba17a5ed8df875656e6e3467728c830e51ddfee1e736f986438e9d79ed56bc8f3d0e7734ec

@ -1 +0,0 @@
dd11eabd17b257220f9523efd6524f12b7c1356f21667a87fe1b8c630bdf9f7d247087f85a8f661a7ef8ccde6e6287d54361aa2287fdf258321a1cc1d885b45a3b636a23e40aec0357dbd699c82a36e07fff9ca6fd85f79652320113

@ -1 +0,0 @@
ef98515555a78fd211906a3eeaf2aca18452c48665b258b5e6a1600693ff65e8a3b6d6a3b1efd0775a297824d42d0454f4ae49789a8bc05bc2ff89b3eaa768754db6d2290fa013a6b6e42eeca8fa45a14c73192081fdd0820673ad17

@ -1 +0,0 @@
8ec21daae97cf60451250b08307df26f9d453860f3e98b4b8244d06846018a4f02c1183373bdf21d64c7ed203821df8e6026975c886ec3f3451127011696ffd8f591457ff12a1fa169b202944156408744374f89654d0d9367984dc0

@ -1 +0,0 @@
b9a18c5f14b14ac6a648a792265d28f81dab207b7367573b83c4a206e01e1bd238f3a0416c66554254a77a473dec0e68bd8bf30185c91b12b07d634e53fd3f7a059eaeca39ff2b67bc848eb05869fc05255121d53c1f0a11bf4f511d

@ -1 +0,0 @@
cdaa7ee86f59aa4bd326af635a899afb21b204882b1e911f5e5a250c76c044d1ccfbb15772d26e36ee9ffe6c290bdebfe49ac1cf1989c913f3d06c76d4c20ebf8ba4a00644405064e51ce2fbdc14c35892393c84e4cc98ca5f2780e6

@ -1 +0,0 @@
c3e2375e1f3d09399c96215861fd4f231e2ec9fd6ec9a8e1143efaff862893542610eacfcf93a76b359fc0a4644a41ffbae7e3d3f580d816231252e28f41633e297796baa3ddd94b9ef2b183ab2b678c675950ef3fbe64dc80e2a680

@ -1 +0,0 @@
2feddeb82936401a582b4d48aa7bc62f1ccabcad430ee9e70ca682392767a8a162d17f691cc22089f434c76c790e57ad0ce93a61aa070b87f802f42d84ac02d3d33cc4baa4a643eeb53b19c4105ba01e2dd7a3cccb75b0678cc71d21

@ -1 +0,0 @@
10f1173239fc903360055a2ffe37948cddbb2b199f66572af56e623b6681c100f2fc71b08cef8fd59c0a784047f321543d81aee9a2d493214c31e72852c5d1c8f350baf4d8667fec16f520680fc59371a0f874ffcc9cd5c824291ff5

@ -1 +0,0 @@
837cdffcc049ba89931d570e4be38bfef513df65d8dd277b0da8e62adf8c23b3c5229a2a4b36aa2c90c17d490dd5f95869365ebc4429d1efc784d25a64db246870d4bb4831d98ec02317ea88b76491a7fdfd2fa5e10f267e8f3989d9

@ -1 +0,0 @@
3866b51e59955446f625063edc6a6f352662e92224ce78a2921e7699d478ace9d1c7a3c7c1932a81c5d7fc677e9c7620fe414a0b8e852bc075d600455e8b07b0918296e2914a656764e438e6978623f23ae63207ef4b377aac478048

@ -1 +0,0 @@
56e7156cfa4151f7beb62d94f92bf08f0544cc35aa65eec1c68f0db99fdef68dd0cc354ba61e949dd962100216155e86052272965b7063d8ebb9a6c7be9c35ab421415f12d05dc0c719b6ac2b3ec20fedc267fbf6a4f022925bc45bf

@ -1 +0,0 @@
926454b15914a0d0a18686173dcee027bd6cb3911866f360a3b383b240431c75130e2f3b3697f5117e072a6c7fc39dcdeb8b1e790034e844b070867740d5eb2d918b649701490e56aecdb7ef22c335d6300a103719c98bb094aec530

@ -1 +0,0 @@
d2e561f8184c1e2ab98a77c82cec7aa6ee2d729ce7664c35784299245c5a2f98afeda45049ff55ac19ad7fe8c9a13d57fd2f250b4a0bcba9146f01d789ce8fbab4433ca09fbf3f6d476f7832a62539c4c12ac7fa5ce37d535c1d21e9

@ -1 +0,0 @@
dbbf69ebbe21d0da28bbf96294171b17644f40bce2bd38470b9345c75811b9685587b0acf9b1806b48a28e7cc56e5e4daad281d2950612beaeef607e8aa71bbc33ed91f76c170b1efe6691a4038ab3b149ac771279ee9ea90b501444

@ -1 +0,0 @@
2d531f231ea393b00d1e74887135dbc6144ccbb683438b7f1b7b9a217ca890ef82ba0a2fad7c103f31ac46cc6cbf073d4489726b3069af3414c930234d284453292cd1a5c14baf884a1f074fe4f70856c2e454e0da1f6acd1d745671

@ -1 +0,0 @@
5ea6f866b075e1c42d2a0aa72862f5161b45e4e5064f87f12c241d43425cdce6f785697d3a7dc40a7b17222543390dac8e4908e71c44a7180f86bda6930b1df96d59adb70f24756c4c4430325b6a2ba36364870dd768d55a4a0c86e1

@ -1 +0,0 @@
764e55fb6b84617d188846e274152ca564b8b013cfe661661bd7c6681fdae3b000ef96c0654cdd7ff8755d32768e3770c4137e9d08c5ea7c8083705f41aae761bc03737cf316382f51c63d9e335a4c6a2d770e190ce5306cdca7821a

@ -1 +0,0 @@
4f10ae42aefd0acfc50cc2a5874eff7ecd98c8a2a6bb9fa7f35f7e23a71211a24d8428b13472558000193d03077afdc5d534e0a91e0113114d141783db621499f7866bcf56300befd2a60408e56d9908069cc51e2216113f050c3d3e

@ -1 +0,0 @@
b3dae95cb93d7081949f19fa14b682254b52034de91020394a7df5bc87c0629ff73e3fc8ad760d911ea9fb488587d3bc36520e936d85e29bfa303db66dacc56728191906b686fc5ea73a63efb83c423f01e150b6737bd07c4763155c

@ -1 +0,0 @@
f7255c1a11961a9dd4f7b0776c6113fc479829880abe05a16322099b651d5b31b829f63794d9c89fe7e9fc9729f7a722b566b77ca3f50824895b4ce26779ecfcfe6e50908f7fd26b101d34f0addb0b6cab5d2d48e82c7db9964dd09d

@ -1 +0,0 @@
8e1c2ffc67eeb241e00f5a87a280cb1705f38dd5e21a727aaccf1f82f60256ff9b7e409e2a059fcaae2f7b41a76ef58149d25fe9c47626ca1df012661d344d9f8a25d817183c55e8be840f5a155e7374cf1044e0abbaa23e6ac0c041

@ -1 +0,0 @@
e32f49038a6eddd0734bc444789ee24cee3ca53f10f9fab44c103099ce0cb3d6978f524cdacbf5b1d4d99e8cca7c3ffe0ebc7f9bc256b9a47b0b3b5a09f821718ee948e28bd3e6392f113a79f9a1a1bfc7b743b2dc06a8a1dc9dd1e9

@ -1 +0,0 @@
04708dbccd097c7f1278b51f6e72a8dead4f913c55dbc412f5d4519ed67d8fb56944c719a544fe724f0648ac9a74875d5458855e7bb434eaae0249f3b6fafbf311147de2f1e64e0394043e55c6cec92ce28af61dda93da6bf65523d3

@ -1 +0,0 @@
2ddd1d3d707da7a1a790aa1c3712c7457eaf63430cdefbd8988602369b112a4b2bde7d1e9769a6e980dc168ed337021bec96ba72607272ba6efdac603bda0d601e0e757384ed92b83f7a99efe412d08d13a9540e654e57aa9f702553

@ -1 +0,0 @@
0eb52e17542aac608b63b714b4f00e620c47743524c9367c9d0c2cb770c727c81167f0b5e94c59c9c0e68864407ca4c64922f6b23a22cb93fa260486d17d67faab495acc567ee41adadffe36632e00d36a903f26cbc60055c5c681ad

@ -0,0 +1,59 @@
pull_request_rules:
- name: Squash merge rule to dev
conditions:
# applied for merge to the dev branch
- base=dev
# no unresolved threads
- "#review-threads-unresolved=0"
# Approved by two reviewers
- "#approved-reviews-by>=2"
# no unverified commit
- "#commits-unverified=0"
# Travis ci succeeded
- "check-success=Travis CI - Pull Request"
# git guardian succeeded
- "check-success=GitGuardian Security Checks"
# PR is not a draft
- -draft
# PR is not conflicting with the base branch
- -conflict
# conditions to avoid auto merge mistakes
# PR title doesn't have wip (not case sensitive)
- -title~=(?i)wip
# PR doesn't have WIP label (not case sensitive)
- label!=(?i)wip
# ready-to-merge is required to trigger the merge
- label=ready-to-merge
actions:
merge:
method: squash
- name: merge rule to main
conditions:
# from the dev branch : no direct PR to main
- head=dev
# applied for merge to the dev branch
- base=main
# no unresolved threads
- "#review-threads-unresolved=0"
# Approved by two reviewers
- "#approved-reviews-by>=2"
# no unverified commit
- "#commits-unverified=0"
# Travis ci succeeded
- "check-success=Travis CI - Pull Request"
# git guardian succeeded
- "check-success=GitGuardian Security Checks"
# PR is not a draft
- -draft
# PR is not conflicting with the base branch
- -conflict
# conditions to avoid auto merge mistakes
# PR title doesn't have wip (not case sensitive)
- -title~=(?i)wip
# PR doesn't have WIP label (not case sensitive)
- label!=(?i)wip
# ready-to-merge is required to trigger the merge
- label=ready-to-merge
actions:
merge:
method: merge

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

@ -1,9 +1,9 @@
os: linux
dist: bionic
dist: jammy
language: go
go:
- 1.19.5
go_import_path: github.com/harmony-one/harmony
go_import_path: github.com/woop-chain/woop
cache:
directories:
- docker_images
@ -12,20 +12,29 @@ env:
- TEST="bash ./scripts/travis_go_checker.sh"
- TEST="bash ./scripts/travis_rpc_checker.sh"
- TEST="bash ./scripts/travis_rosetta_checker.sh"
# upgrade docker to latest stable version
addons:
apt:
sources:
- sourceline: deb https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable
packages:
- docker.io
install:
# default working directory with source code is automatically set to
# /home/travis/gopath/src/github.com/harmony-one/harmony
# /home/travis/gopath/src/github.com/woop-chain/woop
# https://docs.travis-ci.com/user/languages/go/#go-import-path
- echo $TRAVIS_PULL_REQUEST_BRANCH
- 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)
- 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)
# - 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/harmony-ek/gencodec@latest
- go install github.com/woop-chain/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 harmony binary looks for the file `./.hmy/blaklist.txt`.
By default, the woop binary looks for the file `./.wiki/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@harmony.one. All
reported by contacting the project team at info@wikiwoop.com. 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 Harmony
# Contributing To Woop
## Coding Guidelines
@ -11,7 +11,7 @@
This [github document](https://help.github.com/articles/creating-a-pull-request/) provides some guidance on how to create a pull request in github.
## PR requirement
To pursue engineering excellence, we have insisted on the highest stardard on the quality of each PR.
To pursue engineering excellence, we have insisted on the highest standard for the quality of each PR.
* For each PR, please run [golint](https://github.com/golang/lint), [goimports](https://godoc.org/golang.org/x/tools/cmd/goimports), to fix the basic issues/warnings.
* Make sure you understand [How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/).
@ -21,12 +21,12 @@ To pursue engineering excellence, we have insisted on the highest stardard on th
The best practice is to reorder and squash your local commits before the PR submission to create an atomic and self-contained PR.
This [book chapter](https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History) provides detailed explanation and guidance on how to rewrite the local git history.
For exampple, a typical workflow is like the following.
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/harmony-one/harmony
cd harmony
git clone https://github.com/woop-chain/woop
cd woop
# 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 HMY_PATH=${GOPATH}/src/github.com/harmony-one
ENV WIKI_PATH=${GOPATH}/src/github.com/woop-chain
ENV OPENSSL_DIR=/usr/lib/ssl
ENV MCL_DIR=${HMY_PATH}/mcl
ENV BLS_DIR=${HMY_PATH}/bls
ENV MCL_DIR=${WIKI_PATH}/mcl
ENV BLS_DIR=${WIKI_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/harmony-one/harmony.git ${HMY_PATH}/harmony
RUN git clone https://github.com/woop-chain/woop.git ${WIKI_PATH}/woop
RUN git clone https://github.com/harmony-one/bls.git ${HMY_PATH}/bls
RUN git clone https://github.com/woop-chain/bls.git ${WIKI_PATH}/bls
RUN git clone https://github.com/harmony-one/mcl.git ${HMY_PATH}/mcl
RUN git clone https://github.com/woop-chain/mcl.git ${WIKI_PATH}/mcl
RUN git clone https://github.com/harmony-one/go-sdk.git ${HMY_PATH}/go-sdk
RUN git clone https://github.com/woop-chain/go-sdk.git ${WIKI_PATH}/go-sdk
RUN cd ${HMY_PATH}/bls && make -j8 BLS_SWAP_G=1
RUN cd ${WIKI_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 ${HMY_PATH}/harmony
WORKDIR ${WIKI_PATH}/woop
RUN scripts/install_build_tools.sh
@ -66,7 +66,7 @@ RUN go mod tidy
RUN scripts/go_executable_build.sh -S
RUN cd ${HMY_PATH}/go-sdk && make -j8 && cp hmy /root/bin
RUN cd ${WIKI_PATH}/go-sdk && make -j8 && cp wiki /root/bin
ARG K1=one1tq4hy947c9gr8qzv06yxz4aeyhc9vn78al4rmu
ARG K2=one1y5gmmzumajkm5mx3g2qsxtza2d3haq0zxyg47r
@ -76,16 +76,16 @@ ARG KS1=8d222cffa99eb1fb86c581d9dfe7d60dd40ec62aa29056b7ff48028385270541
ARG KS2=da1800da5dedf02717696675c7a7e58383aff90b1014dfa1ab5b7bd1ce3ef535
ARG KS3=f4267bb5a2f0e65b8f5792bb6992597fac2b35ebfac9885ce0f4152c451ca31a
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 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 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 hmy for local dev\n\n'" >> /root/.bashrc && \
echo "printf 'test with: hmy blockchain validator information ${K1}\n\n'" >> /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 "echo "$(jq '.["public-key"]' -r keys.json)" is an extern bls key" >> /root/.bashrc && \
echo ". /etc/bash_completion" >> /root/.bashrc && \
echo ". <(hmy completion)" >> /root/.bashrc
echo ". <(wiki completion)" >> /root/.bashrc

@ -1,6 +1,6 @@
# Fiduciary License Agreement 2.0
Thank you for your interest in contributing to Simple Rules Company's Harmony
Thank you for your interest in contributing to Simple Rules Company's Woop
("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@harmony.one
– in any event, please contact Us at licensing@wikiwoop.com
## 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=harmony
PKGNAME=woop
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 harmony binary & bootnode along with the MCL & BLS libs (if necessary)"
@echo "all - build the woop binary & bootnode along with the MCL & BLS libs (if necessary)"
@echo "libs - build only the MCL & BLS libs (if necessary) "
@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 "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 "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 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"
@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"
libs:
make -C $(TOP)/mcl -j8
@ -56,6 +56,7 @@ trace-pointer:
bash ./scripts/go_executable_build.sh -t
debug:
rm -rf .dht-127.0.0.1*
bash ./test/debug.sh
debug-kill:
@ -106,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/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
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
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
@ -134,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/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 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 scripts/package/rclone.conf $(RPMBUILD)/SOURCES/$(PKGNAME)-$(VERSION)
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
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
(cd $(RPMBUILD)/SOURCES; tar cvf $(PKGNAME)-$(VERSION).tar $(PKGNAME)-$(VERSION))
rpm_build:
rpmbuild --target x86_64 -bb $(RPMBUILD)/SPECS/harmony.spec
rpmbuild --target x86_64 -bb $(RPMBUILD)/SPECS/woop.spec
rpm: rpm_init rpm_build
rpm --addsign $(RPMBUILD)/RPMS/x86_64/$(PKGNAME)-$(VERSION)-$(RELEASE).x86_64.rpm
@ -163,7 +164,19 @@ go-test:
go test -vet=all -race ./...
docker:
docker build --pull -t harmonyone/$(PKGNAME):latest -f scripts/docker/Dockerfile .
docker build --pull -t woopchain/$(PKGNAME):latest -f scripts/docker/Dockerfile .
travis_go_checker:
bash ./scripts/travis_go_checker.sh
travis_rpc_checker:
bash ./scripts/travis_rpc_checker.sh
travis_rosetta_checker:
bash ./scripts/travis_rosetta_checker.sh
debug_external: clean
bash test/debug-external.sh
build_localnet_validator:
bash test/build-localnet-validator.sh

@ -1,18 +1,10 @@
# Harmony
# WoopChain
[![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.harmony.one
https://docs.wikiwoop.com/
## API Guide
http://api.hmny.io/
## Requirements
@ -47,27 +39,27 @@ For macOS, you can reference this [guide](http://tldrdevnotes.com/bash-upgrade-3
## Dev Environment
**Most repos from [harmony-one](https://github.com/harmony-one) assumes the GOPATH convention. More information [here](https://github.com/golang/go/wiki/GOPATH).**
**Most repos from [woop-chain](https://github.com/woop-chain) 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/harmony-one
cd $(go env GOPATH)/src/github.com/harmony-one
mkdir -p $(go env GOPATH)/src/github.com/woop-chain
cd $(go env GOPATH)/src/github.com/woop-chain
```
> 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/harmony-one/mcl.git
git clone https://github.com/harmony-one/bls.git
git clone https://github.com/harmony-one/harmony.git
cd harmony
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
```
3. Build the harmony binary & dependent libs
3. Build the woop binary & dependent libs
```
go mod tidy
make
@ -77,19 +69,19 @@ make
## Dev Docker Image
Included in this repo is a Dockerfile that has a full harmony development environment and
Included in this repo is a Dockerfile that has a full woop 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/harmony-one/harmony
cd $(go env GOPATH)/src/github.com/woop-chain/woop
make clean
docker build -t harmony .
docker build -t woop .
```
> 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 harmony .
> docker build --platform linux/amd64 -t woop .
> ```
> 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/).
@ -97,26 +89,26 @@ docker build -t harmony .
Then you can start your docker container with the following command:
```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
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
```
> 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.
> 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.
If you need to open another shell, just do:
```bash
docker exec -it harmony /bin/bash
docker exec -it woop /bin/bash
```
Learn more about docker [here](https://docker-curriculum.com/).
## Build
The `make` command should automatically build the Harmony binary & all dependent libs.
The `make` command should automatically build the Woop 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/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 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 LIBRARY_PATH=$LD_LIBRARY_PATH
export DYLD_FALLBACK_LIBRARY_PATH=$LD_LIBRARY_PATH
export GO111MODULE=on
@ -150,7 +142,7 @@ make debug-kill
To keep things consistent, we have a docker image to run all tests. **These are the same tests ran on the pull request checks**.
Note that all testing docker container binds a couple of ports to the host machine for your convince. The ports are:
Note that all test Docker containers bind several ports to the host machine for your convenience. The ports are:
* `9500` - Shard 0 RPC for a validator
* `9501` - Shard 1 RPC for a validator
* `9599` - Shard 0 RPC for an explorer
@ -159,7 +151,7 @@ Note that all testing docker container binds a couple of ports to the host machi
* `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, hmy 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, wiki 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:
@ -174,8 +166,8 @@ To run this test, do:
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 through tests are done on the testnets).
> The tests ran by this command can be found [here](https://github.com/harmony-one/harmony-test/tree/master/localnet).
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).
If you wish to debug further with the localnet after the tests are done, open a new shell and run:
```bash
@ -183,9 +175,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 [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)
> 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)
> for more details & commands.
### Rosetta tests
@ -194,8 +186,8 @@ To run this test, do:
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 through tests are done on the testnets).
> 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)
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)
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
@ -204,10 +196,10 @@ make test-rosetta-attach
## License
Harmony is licensed under GNU Lesser General Public License v3.0. See [`LICENSE`](LICENSE) file for
Woop is licensed under GNU Lesser General Public License v3.0. See [`LICENSE`](LICENSE) file for
the terms and conditions.
Harmony includes third-party open-source code. In general, a source subtree
Woop 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.
@ -216,7 +208,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 Harmony
## Contributing To Woop
See [`CONTRIBUTING`](CONTRIBUTING.md) for details.
@ -235,10 +227,3 @@ 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@harmony.one
Create a github issue if vulnerability can be exposed publicly otherwise send an email to security@wikiwoop.com
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/harmony-one/harmony/common/math"
"github.com/woop-chain/woop/common/math"
)
const jsondata = `

@ -20,16 +20,15 @@ import (
"crypto/ecdsa"
"errors"
"io"
"io/ioutil"
"math/big"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/crypto"
"github.com/ethereum/go-ethereum/log"
"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"
"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"
)
// ErrNoChainID is returned whenever the user failed to specify a chain id.
@ -44,7 +43,7 @@ var ErrNotAuthorized = errors.New("not authorized to sign this account")
// Deprecated: Use NewTransactorWithChainID instead.
func NewTransactor(keyin io.Reader, passphrase string) (*TransactOpts, error) {
log.Warn("WARNING: NewTransactor has been deprecated in favour of NewTransactorWithChainID")
json, err := ioutil.ReadAll(keyin)
json, err := io.ReadAll(keyin)
if err != nil {
return nil, err
}
@ -103,7 +102,7 @@ func NewKeyedTransactor(key *ecdsa.PrivateKey) *TransactOpts {
// NewTransactorWithChainID is a utility method to easily create a transaction signer from
// an encrypted json key stream and the associated passphrase.
func NewTransactorWithChainID(keyin io.Reader, passphrase string, chainID *big.Int) (*TransactOpts, error) {
json, err := ioutil.ReadAll(keyin)
json, err := io.ReadAll(keyin)
if err != nil {
return nil, err
}

@ -23,7 +23,7 @@ import (
"github.com/ethereum/go-ethereum"
"github.com/ethereum/go-ethereum/common"
"github.com/harmony-one/harmony/core/types"
"github.com/woop-chain/woop/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/harmony-one/harmony/accounts/abi"
"github.com/harmony-one/harmony/core/types"
"github.com/woop-chain/woop/accounts/abi"
"github.com/woop-chain/woop/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/harmony-one/harmony/accounts/abi"
"github.com/harmony-one/harmony/accounts/abi/bind"
"github.com/harmony-one/harmony/core/types"
"github.com/woop-chain/woop/accounts/abi"
"github.com/woop-chain/woop/accounts/abi/bind"
"github.com/woop-chain/woop/core/types"
)
type mockCaller struct {

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

@ -16,7 +16,7 @@
package bind
import "github.com/harmony-one/harmony/accounts/abi"
import "github.com/woop-chain/woop/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/harmony-one/harmony/accounts/abi"
"github.com/woop-chain/woop/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/harmony-one/harmony/accounts/abi"
"github.com/woop-chain/woop/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/harmony-one/harmony/core/types"
"github.com/woop-chain/woop/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/harmony-one/harmony/common/math"
"github.com/woop-chain/woop/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/harmony-one/harmony/core/types"
"github.com/woop-chain/woop/core/types"
"golang.org/x/crypto/sha3"
)

@ -1,12 +1,12 @@
package accounts
import (
"github.com/harmony-one/harmony/internal/bech32"
"github.com/harmony-one/harmony/internal/common"
"github.com/woop-chain/woop/internal/bech32"
"github.com/woop-chain/woop/internal/common"
"github.com/pkg/errors"
)
// MustBech32ToAddressH is a wrapper for casting ethCommon.Address to harmony's common.Address
// MustBech32ToAddressH is a wrapper for casting ethCommon.Address to woop'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/harmony-one/harmony/accounts"
"github.com/harmony-one/harmony/core/types"
"github.com/harmony-one/harmony/eth/rpc"
"github.com/woop-chain/woop/accounts"
"github.com/woop-chain/woop/core/types"
"github.com/woop-chain/woop/eth/rpc"
)
// ExternalBackend is a struct for external backend

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

Loading…
Cancel
Save