Releases: maticnetwork/bor
v0.3.0-beta
We have released a new version of Bor and Heimdall - v0.3.0 with an incremented minor version. As explained in the previous post, we have added a new CLI in Bor and have also changed the way Bor and Heimdall are deployed to follow DevOps best practices and make it easier to manage the processes. This upgrade is backwards incompatible. Please ensure that all Mumbai nodes are upgraded soon, before the release of the next version v0.3.1 that will contain a hardfork which is scheduled to kick in on 7th Dec 2022 (tentative).
Important Note: For our next releases, v0.3.1 and onward, upgrading to version 0.3.0 is necessary.
Changes from deployment perspective
- Provide a new approach to install bor binary with a shell script.
- Recommended default bor home is changed from
~/.bor
to/var/lib/bor
. bor/start.sh
will be retired. We recommend moving flags fromstart.sh
to/var/lib/bor/config.toml
, which will be the single config file for all bor configurations. Example config toml files could be found here.- A new user named
bor
will be created during package installation if it doesn’t exist. This user will be running bor service. - Move
bor.service
file from/etc/systemd/system
to/lib/systemd/system
- CLI flag changes. For validators who wants to continue setting bor configs through CLI, see appendix for detailed changes.
- Bor profiles can be used with new hosts only, please note existing installations will not be able to take advantages of the profiles.
- Bor packaging installation is now simplified to
sudo dpkg -i bor-$version-$arch.deb
- Bor profile installation for new hosts is accomplished by running
sudo dpkg -i bor-$network-$nodetype-config_$version-$arch.deb
Detailed changelog
- In v0.2.x,
bor
andbootnode
are two separate binaries. In v0.3.0,bootnode
will become a subcommand ofbor
. bor init
is removed in v0.3.0. Instead, on starting,bor
will automatically initialize a bor home directory if not found.bor
’s default behavior (running bor client) is moved tobor server
as a subcommand.GRPC
: On starting bor using theserver
subcommand, it will start a GRPC server on a separate port which will be used for cli related communication. Here, the user using the cli, acts as a client and interacts with the node using GRPC. It is used for operations like adding and removing peers, getting status of node (sync status, forks, chain head, etc), getting debug and pprof traces, etc.- Validator must provide its public address to flag
--miner.etherbase
in order to mint blocks. - The format of toml passed to
--config
is changed. Notice that, in v0.2.x, only P2P related info like static or trusted nodes were mentioned in the toml file. With v0.3.x, you can pass the whole cli config using this flag. For more details and examples, see this. --networkid
is replaced by--chain
, whose value is eithermainnet
ormumbai
. The flag also accepts the path to a custom genesis file, e.g.--chain path/to/custom_genesis.json
.--verbosity
is replaced by--log-level
and instead of numeric values, string denoting the type of log should be passed.--whitelist
is now changed to--requiredblocks
- pprof options are merged to a new component,
grpc
. e.g.--pprof.addr 0.0.0.0
and--pprof.port 1234
should be passed as one argument to flag--grpc.addr 0.0.0.0:1234
. If not set, default value will be0.0.0.0:3131
. --metrics.addr
and--metrics.port
are merged to--metrics.prometheus-addr
. e.g.--metrics.addr 0.0.0.0
and--metics.port 1234
should be passed as one argument to flag--metrics.prometheus-addr 0.0.0.0:1234
. Notice that, in v0.2.x,--metrics.addr
and--metrics.port
, if not explicitly set, the metrics will be exported onpprof.addr:pprof.port
. If no flag is provided, the prometheus endpoint is registered on a default host and port.- A new flag named
disable-bor-wallet
is introduced which disables the personal wallet endpoints in the node. This prevents misuse of the endpoints if exposed. It will only register and use the key-store for mining blocks (if mining is enabled through--unlock
and--miner.etherbase
). It’s set totrue
by default. - borTraceEnabled added in TraceConfig. When set true, it will return state-sync traces for a block if present. Usage :
debug.traceBlockByNumber("0x20FE900",{"borTraceEnabled": true})
- The
miner.gaslimit
value has been updated for mumbai nodes from 20M to 30M.
Full Changelog: v0.2.17...v0.3.0-beta
v0.2.17
- Prevents the nodes from accidentally migrating to snap sync mode. Bor does not support snap sync mode, yet and hence it’s hard to recover the nodes if they go into this mode. (#495)
- Regression fix for the whitelist/eth.requiredblocksflag and some nomenclature changes according to the latest geth release. (#497, #505)
v0.3.0-beta5
Changelog
- 367f43b fix: whitelist/requiredblocks regression (#496)
- 54719fb Makefile: copy bor binary to go bin (#469)
- 8c97faa internal/cli, cmd/geth: replaced package naoina/toml with BurntSushi/toml and updated config name-tags (#486)
- 2aacbde eth, cli: prevent snap sync mode migration - v0.3.x (#494)
- 0b28230 updated config.toml in builder/files, added all fields and commented those which are not used (#491)
- 10c1ff2 internal/cli: add support for removedb (#478)
v0.3.0-beta4
Changelog
- ba18491 fix: tests
- 18fafc0 disable bor wallet by default
- a28720e Merge pull request #479 from cffls/qa
- 694dc02 fixed the bug caused by fillBigInt and FillTime.Duration functions (#474)
- 8378cc9 Add 'bor' user during package installation
- e62beee internal/cli: use config file for flags in new-cli, builder/files: update defaults (#457)
- f539818 Change diverged flags back to Geth's convention (POS-602) (#451)
- f90faf0 Match default parameters to mainnet
- a73b0f7 change version
- 88dbfa1 Merge pull request #433 from cffls/develop
- 1daa659 Merge remote-tracking branch 'upstream/develop' into develop
- 3bb1480 Merge pull request #437 from maticnetwork/krishna/reproducible-build-test
- fbaeaa2 Added reproducible build test to CI
- 9592534 Integration tests
- 9ec6738 Set Heimdall client to nil when 'withoutheimdall' is set
- 9bc9a45 Merge branch 'v0.3.0-dev' into develop
- 33e646e Add keystore option to cli
- 342bf30 Merge develop branch into v0.3.0-dev (#430)
- 8ebac95 Merge pull request #424 from maticnetwork/stale-workflows
- edd21b3 Merge pull request #421 from karlonovak/master
- 9c8bf51 Prepare Bor package for testing (#416)
- c3a0c20 Create stale.yml
- ed2d9ae Merge pull request #386 from maticnetwork/rfc35/common-ancestor-approach-units
- 8808c23 Merge pull request #419 from cffls/v0.3.0-dev-flags
- 0d2b1d0 internal/cli: add block tracing (#397)
- b4872ca fix
- f8a56b8 fix close
- 208133b fix
- 01b6d6c fix
- 494687f fix
- c9a3b99 use typed mocks
- 57e829f avoid capping warnings for gas set by internal system transactions
- 4ffdbfe Merge pull request #417 from cffls/v0.3.0-dev-lint
- b19d5e1 Merge branch 'master' into rfc35/common-ancestor-approach-units
- 8255d19 minor fixes and enhancements
- d4e7603 add debug rpc endpoints for checkpoint whitelist service
- 96ac8d1 Overwrite default config with CLI input even when the input value is considered as empty
- 4cec5f0 Add ability to parse legacy genesis file
- 3ae87c0 Read static-nodes and trusted-nodes from default files if not specified in CLI
- 783f93b Merge pull request #418 from maticnetwork/0xkrishna/pos-375
- 3f5fe0e Increased default value of rpc.txfeecap to 5
- 5092006 Fix default Dockerfile for new CLI
- 4fb3f5d Modifying miner.recommit flag and its adjustment function. (#370)
- 96228cc Merge pull request #410 from cffls/v0.3.0-dev-lint
- 2e2557a Enable prealloc check and improve address comparison
- 45a72bc Lint internal/cli
- 2ba7c03 fix tests
- cb9d291 add more tests
- 9c86192 modularise fake chain validator in downloader
- c46a293 handle all errors
- 2b089ee fix: return value for no remote block
- 12ab0f0 Lint consensus/bor module
- 87a2e52 Merge pull request #395 from maticnetwork/testing-flags
- 63bedf3 Merge pull request #405 from cffls/whitelist
- 8c3423c Merge pull request #407 from maticnetwork/POS-374
- 2323f2c fix: modify build eth fn definition for account unlock handling (#412)
- 1b53044 internal/cli/server, eth: add option to disable personal wallet endpoints (#394)
- 59337a7 Minor Fix
- 20d99d9 Adding individual gasUsed
- b88353c Minor Fix
- dba3740 Minor Changes
- 8b83958 Added number of event-records in log
- c8f8465 Added logging for state-sync total gas usage
- e01a0f2 Limit state sync by gas
- 01117ac fmt
- 89fadee dont panic
- d493806 fix test
- fb46dd8 minor fixes
- cd1a899 Merge pull request #403 from cffls/v0.3.0-dev
- b1b0c0e test ErrCheckpointMismatch
- c02e2cb Rename whitelist to requiredblocks
- 2930d04 misspell
- 3aaf6bc cherry-pick from Jerry's Chen branch
- af2b5e0 wip
- 3dd7f59 more tests
- 8de6903 Implement and enable 'unlock' flag
- 91559f3 run on forked branches
- 30dd11a run on forked branches
- 52647fc run on forked branches
- e787097 restore codecov
- 95bfcdc macos tests
- 5a3eb08 where to run3
- a8a9229 where to run2
- 276e82b where to run1
- 3268c14 where to run
- 485762a where to run
- 81ede2f where to run
- 39d943d stable tests
- 30641c0 Merge pull request #396 from cffls/v0.3.0-dev
- b05c336 fmt
- a57d211 leaks
- 594c9ab vs master
- f0f113c run versus origin/master
- bae9c44 add unit tests for IsValidChain function
- 9838fef Set default user to ubuntu in bor.service
- ca19e01 fix
- 2bac6ce remove shuffle for e2e
- e36a54d goleak
- 7c6357e group concurrency
- b2b327e ignore cmd tests
- 5458ac0 fix
- 348f91e more time for tests for data races
- 6a598b4 revert
- cd4b40f test without linters
- 834c774 only new issues
- 64ad2f9 update linter list
- a6ec55b fix tests and format
- 1590047 linters
- 3c2510a move integration ci
- b43ebd5 fix build
- 63cd7a3 move integration ci
- ee5b7c0 integration tag
- 5192fd7 split units and integration. step 1
- eb76df2 better ci
- 110ea65 Merge pull request #385 from cffls/jc/prometheus
- a885651 Merge pull request #381 from maticnetwork/jc/clidoc
- 8fc86cc Fix prometheus path and add prometheus to bor.service
- ad8bede Add bootnode cli
- f083705 Merge pull request #392 from maticnetwork/v0.2.16-candidate
- be01489 move logs
- e4e5d4a fix: fetch span retry bug
- a131e42 Automatically generate markdown pages from bor CLI
- 597037d Update default cli config (#323)
- 388b68c Minor Fixes
- 00e51a9 Removed console command
- 0736fde Added console + attach refactor
- 065556d Minor Fixes
- 1530452 minor fixes
- 7f54699 Initial Work Setup
- 55aa9af Removed Fio installation process
- be2463b read/write IOPS added
- d503410 code refactor
- 5039f4f Added bor fingerprint
- c3d180c Minor fix
- b172ba8 Sorted Difficulties
- e0b43b0 Minor fix
- e496afb Minor Fix
- 4e6d323 Added GetSnapshotProposerSequence
- 98b7117 Rename chain test case
- d7ebe2f Add test case for Import from file
- b398409 Updated file check
- 1ef2726 Add ability to run using chain json file
- e10b10a start http rpc server and eth namespace by default (#319)
- 66fc055 Build and run the new CLI (#318)
- b416577 Protobuf tooling fix and upgrade (#313)
- 0232c6a Do not build classic docker image
- 0a63981 add seperate module config for http and ws
- 2321e64 V0.2.16 candidate (#373)
- aa3004b fix types
- 2cb82c9 extract whitelist interface
- cc7c5b3 initial implementation for common ancestor approach
- b91293a Merge pull request #375 from maticnetwork/krishna/update-mumbai-config
- fe66e29 Fix typo
- 8ea9231 fix: update mumbai genesis config
- 98123ba fix: update mumbai config
v0.2.16
Changelog
- f083705 Merge pull request #392 from maticnetwork/v0.2.16-candidate
- be01489 move logs
- e4e5d4a fix: fetch span retry bug
- 2321e64 V0.2.16 candidate (#373)
- b91293a Merge pull request #375 from maticnetwork/krishna/update-mumbai-config
- fe66e29 Fix typo
- 8ea9231 fix: update mumbai genesis config
- 98123ba fix: update mumbai config
- a9fd438 Merge pull request #172 from tn606024/fix-get-block
- d561a25 fix: modify the comment of txlookuplimit (#344)
- 65f4d27 Shivam/ethstats backend fix (#341)
- 44603db Update rest.go (#349)
- 7ff6869 Merge pull request #222 from chuwt/chuwt-1029
- 30ad2b5 Merge pull request #316 from maticnetwork/feature-ethstats-arbitrary
- 8e3d66c Handle graceful shutdown in bor (#359)
- d687d0d Merge pull request #358 from maticnetwork/shivam/codecov
- 3c051f0 Added codecov
- 7b49cb0 Split modules for cli (#315)
- fe21391 Merge pull request #309 from maticnetwork/manav/dev-mode
- b02c742 Added arbitray data Ethstats
- 6ccd75c replace Fatalf function with fmt.Errorf
- 08f9931 add test for dev flag
- 55c34d6 Merge pull request #303 from maticnetwork/merge-subs2
- 0662b70 enable dummy developer account for dev mode
- 87a095e Merge pull request #311 from maticnetwork/arpit/v0.2.14
- e5d5802 minor changes
- 560ad7d merge master
- 58e4311 Minor change
- ca0f04c add developer enabled check for mining
- 904f8b5 Minor changes
- f86b79e add dev mode for new cli
- 2d4ef67 Streamlined code
- 8f7174f Refactor Code
- 949822c some refactor
- 06c9d5c Test each event without for loop
- 6ab7515 Merge branch 'master' into merge-subs2
- 70f9c88 Added Chain2HeadEvent Test
- 2d84249 fix for TestReorgSideEvent (#304)
- 68ea5cd minor fixes
- 1215260 Merge branch 'master' into merge-subs2
- f3d6620 migrate cli to internal package (#301)
- 87362e4 Merging feature-subs2 to master
- 336b89e Enable test again (#280)
- 4829114 Use stream to send debug files (#279)
- 3b2bfa0 Add forks to status (#278)
- 8a3508a Merge pull request #284 from AlexSSD7/master
- 0978123 Merge pull request #294 from maticnetwork/v0.2.13-candidate
- 00c78e7 Include missing bad merge changes
- 34d8949 Include London genesis file
- 8bd07e4 Update version.go
- bae0323 add burnt contract address
- e4f1677 add london fork
- 07c0669 bumped version to beta2
- a10f79d jaipur fork (#269)
- 467e53b Build with the previous Dockerfile (#268)
- 7115b84 london fork (#260)
- 8dd6f59 Configure bor params in the unit itself (#270)
- d7891c0 Bump maximum GPO price to 5000 Gwei
- 53d8947 Do not attempt DNS discovery and change default sync flag (#283)
- 521b3a7 bor the default target (#281)
- d51abdb removed errors in testcase (#258)
- fbd2de7 Build using netgo tag (#275)
- bbdd7ef More cleanup
- 71bb715 Move things in lightclient
- 1b9c2ad Clean ethstats syncer
- 3a67447 Added chain2head event in Ethstats
- d5d639d Feature grpc status (#224)
- 9957d91 minor fix
- 4867ce8 merge MASTER into feature-subs
- 39116e6 V0.2.12 candidate (#261)
- 1865f28 Added sypnosis/help + clean code
- a6f014c fixes
- beaf6da Minor Refactor
- dcb6cab Fixes
- 4488927 Connected chain2head protobuf
- e6235a8 Initial approach
- 53a35e0 Connected chain2head protobuf
- ea27380 Merge branch 'maticnetwork:feature-subs' into feature-subs
- 1253fd5 Initial approach
- b86a566 Fix default attach endpoint
- bb0e439 ethclient: delete check empty tx root hash
v0.2.16-beta2
Changelog
- 429deab Fix meta
v0.2.16-beta1
Changelog
- 0525715 Merge 'master' into 'v0.2.16-candidate'
- a9fd438 Merge pull request #172 from tn606024/fix-get-block
- d561a25 fix: modify the comment of txlookuplimit (#344)
- 65f4d27 Shivam/ethstats backend fix (#341)
- 44603db Update rest.go (#349)
- 7ff6869 Merge pull request #222 from chuwt/chuwt-1029
- 30ad2b5 Merge pull request #316 from maticnetwork/feature-ethstats-arbitrary
- 1a31178 Build using netgo tag
- bf85e15 Bump Go version to v1.18 (#368)
- d5b76d4 fix failing tests
- 44e5edf bumped version
- 54c6db5 merge master into v0.2.16-candidate
- 8e3d66c Handle graceful shutdown in bor (#359)
- a551f01 merge gethv1.10.17
- ebf95b9 bumped version
- c8c9296 Merge branch 'master' of https://github.com/maticnetwork/bor into v0.2.15-beta3-candidate
- d687d0d Merge pull request #358 from maticnetwork/shivam/codecov
- 3c051f0 Added codecov
- 7b49cb0 Split modules for cli (#315)
- b02c742 Added arbitray data Ethstats
- b86a566 Fix default attach endpoint
- bb0e439 ethclient: delete check empty tx root hash
v0.2.14-tmp-span-hotfix
This release includes a temporary fix for the ongoing Tendermint issue.
Docker images
docker pull 0xpolygon/bor:0.2.14-tmp-span-hotfix
v0.2.15-beta2
This release contains changes for updating block time and wiggle time in Mumbai Testnet to 5 sec.
v0.2.15-beta1
This release contains changes from upstream geth v1.10.15 and few other enhancements in bor.
Docker images
docker pull 0xpolygon/bor:0.2.15-beta1