Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Beta to stable #1942

Merged
merged 227 commits into from
Jul 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
227 commits
Select commit Hold shift + click to select a range
b90c600
Update VERSION
DmytroNazarenko Jan 23, 2024
e048b97
Merge pull request #1798 from skalenetwork/DmytroNazarenko-patch-1
DmytroNazarenko Jan 23, 2024
254c979
SKALED-1583 Experiments with Patch Architecture
dimalit Feb 1, 2024
b58b6b1
SKALED-1583 Get rid of SealEngine
dimalit Feb 2, 2024
d5ac1eb
SKALED-1583 Introduce previous block timestamp parameter in various p…
dimalit Feb 5, 2024
31b663e
SKALED-1583 Draft usage of block timestamp for fork estimation
dimalit Feb 6, 2024
6c1a619
SKALED-1583 Added _lastBlockTimetamp everywhere, builds
dimalit Feb 7, 2024
eb693f7
SKALED-1583 Use Block's m_previousBlock
dimalit Feb 7, 2024
590809c
SKALED-1583 Add latestBlockTimestamp to EnvInfo -> Executive, Block, …
dimalit Feb 7, 2024
4e52e04
SKALED-1583 Remove latestBlockTimestamp from AlethExtVM too
dimalit Feb 7, 2024
8fe5cc9
SKALED-1583 Add and try DEFINE_AMNESIC_PATCH
dimalit Feb 8, 2024
eb0361c
SKALED-1583 Try SkipInvalidTransactionsPatch
dimalit Feb 9, 2024
fd6b393
Merge branch 'v3.19.0' into develop-to-3.19
olehnikolaiev Feb 14, 2024
381b3c7
Merge pull request #1819 from skalenetwork/develop-to-3.19
DmytroNazarenko Feb 14, 2024
babeb7a
SKALED-1583 Tests compile
dimalit Feb 14, 2024
40624e4
SKALED-1583 Adapting tests
dimalit Feb 16, 2024
b5df8f5
SKALED-1583 Do all transaction checks in SealEngine, not in Ethash
dimalit Feb 16, 2024
d1e2192
Merge branch 'develop' into enhancement/SKALED-1583-patch-architecture
dimalit Feb 20, 2024
60328c5
SKALED-1583 Fix library dependencies in testeth
dimalit Feb 21, 2024
52b0449
SKALED-1583 Fix SkaleHost tests
dimalit Feb 21, 2024
451fc2e
SKALED-1583 Fix tests
dimalit Feb 21, 2024
2166eff
SKALED-1583 Remove unneeded parameter
dimalit Feb 22, 2024
0f48b2b
SKALED-1583 Remove unused class member
dimalit Feb 22, 2024
ad8350b
SKALED-1583 Universal config of schain patches
dimalit Feb 24, 2024
ff0e82a
SKALED-1583 Fix build
dimalit Feb 26, 2024
413850c
SKALED-1583 Rename latestBlockTimestamp to committedBlockTimestamp
dimalit Feb 26, 2024
c0339d2
SKALED-1583 Use proper patch timestamp names
dimalit Feb 26, 2024
7198767
Merge branch 'v3.19.0' into develop-to-3.19.0
DmytroNazarenko Feb 26, 2024
00a09f6
SKALED-1583 Convert some patches to new arch
dimalit Feb 28, 2024
d05e981
Merge pull request #1835 from skalenetwork/develop-to-3.19.0
DmytroNazarenko Feb 28, 2024
c8e02cf
SKALED-1583 Remove frontier test
dimalit Feb 29, 2024
5361b9a
SKALED-1583 Add Push0 test
dimalit Feb 29, 2024
0c30eac
SKALED-1583 Test for StorageDestructionPatch and combine most patches…
dimalit Mar 1, 2024
e8f7cdd
SKALED-1583 Remove some patch files
dimalit Mar 4, 2024
26ba1d1
Merge branch 'v3.19.0' into enhancement/SKALED-1583-patch-architecture
dimalit Mar 4, 2024
668be42
SKALED-1583 One more patch
dimalit Mar 4, 2024
3260e70
SKALED-1583 Fix tests, but not all
dimalit Mar 4, 2024
82ccc7d
SKALED-1583 Add log and modularize code a little
dimalit Mar 5, 2024
5adcf01
SKALED-1583 Add back patches descriptions
dimalit Mar 5, 2024
5915655
SKALED-1583 Small beautifying and introduction of enum
dimalit Mar 7, 2024
c664283
SKALED-1583 Fix some tests
dimalit Mar 11, 2024
537141d
SKALED-1583 Some prettifying
dimalit Mar 11, 2024
9d92873
SKALED-1583 Remove endl in some palces
dimalit Mar 11, 2024
9bd2542
SKALED-1583 Make some parameters' names more clear
dimalit Mar 12, 2024
3936651
SKALED-1583 Fix buid
dimalit Mar 13, 2024
3d5cefc
#1774 change hwm limits for zmq broadcast
olehnikolaiev Mar 13, 2024
bf14d01
#1774 fix typo
olehnikolaiev Mar 13, 2024
5452ee7
Merge pull request #1849 from skalenetwork/bug/1774-change-zmq-broadc…
olehnikolaiev Mar 14, 2024
888c64d
SKALED-1583 Use correct block in eth_call() and eth_estimateGas(). Al…
dimalit Mar 18, 2024
263d4b7
#1825 Update eth_call unit test
DmytroNazarenko Mar 18, 2024
450c3e6
#1825 Update eth_call unit test
DmytroNazarenko Mar 18, 2024
b1ccbf1
#1825 Add support of input field in tx dict
DmytroNazarenko Mar 18, 2024
18c5f04
#1825 Fix linter
DmytroNazarenko Mar 18, 2024
3d6422c
#1825 Fix linter
DmytroNazarenko Mar 19, 2024
b9d676c
SKALED-1853 Add test for historic and fix estimateGas
dimalit Mar 19, 2024
0a9837d
SKALED-1583 Fix test
dimalit Mar 19, 2024
45d8a50
SKALED-1583 Fix rand in tests
dimalit Mar 19, 2024
5a6f7d0
#1719 add support for type1 and type2 txns
olehnikolaiev Mar 19, 2024
1288218
#1719 fix txn handling in verifyBlock
olehnikolaiev Mar 20, 2024
7410de4
SKALED-1583 Minor polishing
dimalit Mar 20, 2024
4c8794d
#1825 Remove dead code
DmytroNazarenko Mar 20, 2024
73803db
Merge pull request #1852 from skalenetwork/enhancement/update-eth-cal…
DmytroNazarenko Mar 20, 2024
aadb0e2
#1719 add more tests
olehnikolaiev Mar 21, 2024
3d9968f
SKALED-1583 Minor changes
dimalit Mar 21, 2024
2fe5699
#1719 add new required fields to json api responses
olehnikolaiev Mar 22, 2024
aa00f50
#1719 add new required fields to json api responses
olehnikolaiev Mar 22, 2024
41b7112
#1719 handle accessList in transactions
olehnikolaiev Mar 25, 2024
4d6da08
#1719 add eth_createAccessList method
olehnikolaiev Mar 25, 2024
b43a624
#1719 add unittests for type2 txns
olehnikolaiev Mar 27, 2024
48c7180
#1719 add new json rpc api methods
olehnikolaiev Mar 27, 2024
09ecc84
#1719 add unittests for txn serialization
olehnikolaiev Mar 27, 2024
6a84e6f
#1719 cleanup
olehnikolaiev Apr 1, 2024
93c2146
#1719 add baseFeePerGas in eth_getBlock calls
olehnikolaiev Apr 1, 2024
92bd60f
#1719 add extra checks
olehnikolaiev Apr 1, 2024
8243d5c
#1719 add extra checks in test
olehnikolaiev Apr 2, 2024
1d2b710
#1719 cleanup
olehnikolaiev Apr 2, 2024
eb5030c
Merge branch 'v3.19.0' into enhancement/SKALED-1583-patch-architecture
dimalit Apr 3, 2024
08f66ef
IS-833 Add patch for maxStorageForSelfdestruct
dimalit Apr 4, 2024
74f58a4
1583 Fix solidity version in test
kladkogex Apr 4, 2024
a1daeb2
1583 Fix crash because of unknown name
kladkogex Apr 4, 2024
c148a94
1583 Fix crash because of unknown name
kladkogex Apr 4, 2024
051f188
1583 add test
kladkogex Apr 4, 2024
7626eb1
1583 add test
kladkogex Apr 4, 2024
7e36fca
SKALED-1583 Merge v3.17.2
dimalit Apr 5, 2024
0589081
#1719 fix sha3 hash calculation for invalid transactions
olehnikolaiev Apr 8, 2024
dc7a567
#1719 fix getTransactionReceipt for HISTORIC STATE
olehnikolaiev Apr 8, 2024
5155bfc
Merge branch 'v3.17.2' into enhancement/SKALED-1583-patch-architectur…
dimalit Apr 8, 2024
9b5992b
SKALED-1583 Formatting
dimalit Apr 8, 2024
75dce1f
SKALED-1583 Format
dimalit Apr 8, 2024
583cc06
Merge branch 'develop' into enhancement/SKALED-1583-patch-architectur…
dimalit Apr 9, 2024
4bfa0e2
SKALED-1583 Enable full debug API by flag
dimalit Apr 9, 2024
eea7152
Merge branch 'develop' into enhancement/SKALED-1583-patch-architectur…
dimalit Apr 10, 2024
9b6538e
Merge branch 'v3.19.0' into develop-to-3.19.0
DmytroNazarenko Apr 10, 2024
d237b0f
Merge pull request #1866 from skalenetwork/develop-to-3.19.0
dimalit Apr 10, 2024
f813411
Merge remote-tracking branch 'origin/v3.19.0' into enhancement/SKALED…
dimalit Apr 10, 2024
49aa213
#1719 add tests for new json-rpc methods
olehnikolaiev Apr 10, 2024
4eb22fc
Rename patches in SchainPatch
DmytroNazarenko Apr 12, 2024
5233f5f
#1719 add more tests
olehnikolaiev Apr 15, 2024
fcd1736
#1719 fix accessList in transaction object
olehnikolaiev Apr 15, 2024
45bac48
#1719 fix accessList in transaction object
olehnikolaiev Apr 15, 2024
057d494
SKALED-1719 Some code rearrangement
dimalit Apr 15, 2024
62b56b3
SKALED-1583 Some polishing
dimalit Apr 16, 2024
f86098f
SKALED-1719 Hide streamRlp()
dimalit Apr 16, 2024
e19191c
SKALED-1719 Fix if
dimalit Apr 16, 2024
66db975
Merge remote-tracking branch 'origin/feature/1719-eip1559' into exper…
dimalit Apr 16, 2024
58aa464
#1719 add gasPrice check for type2 transactions
olehnikolaiev Apr 17, 2024
913844f
Merge pull request #1868 from skalenetwork/enhancement/SKALED-1583-pa…
dimalit Apr 17, 2024
bc9cd39
SKALED-1719 More prettifying
dimalit Apr 17, 2024
1f30267
#1719 fix yParity field in json-rpc responses
olehnikolaiev Apr 17, 2024
1815ebf
SKALED-1719 Use separate function to extract transaction bytes
dimalit Apr 17, 2024
a35280a
#1719 handle price absence in the db
olehnikolaiev Apr 18, 2024
a2dd1de
#1719 small fixes
olehnikolaiev Apr 19, 2024
5b8b374
Merge branch 'v3.19.0' into feature/1719-eip1559
olehnikolaiev Apr 22, 2024
a022d70
#1719 fix build after merge
olehnikolaiev Apr 22, 2024
7622b15
Merge pull request #1872 from skalenetwork/experiment/1719-proposed-c…
olehnikolaiev Apr 22, 2024
fea8f46
Merge branch 'feature/1719-eip1559' of github.com:skalenetwork/skaled…
olehnikolaiev Apr 22, 2024
e14427d
#1719 add patch timestamp to json rpc api
olehnikolaiev Apr 22, 2024
41c3a87
#1719 add eip1559PatchTimestamp
olehnikolaiev Apr 22, 2024
798f2b1
#1719 fix tests
olehnikolaiev Apr 22, 2024
dfb3f3e
#1719 add patchTimestamp to tests
olehnikolaiev Apr 22, 2024
7fb0ac2
#1719 small fixes
olehnikolaiev Apr 22, 2024
31f49af
#1719 fix tests
olehnikolaiev Apr 23, 2024
a5ad610
#1719 small fixes
olehnikolaiev Apr 23, 2024
aeeac8b
#1719 fix patchTimestamp usage
olehnikolaiev Apr 23, 2024
d8bd5da
#1719 fix patchTimestamp usage
olehnikolaiev Apr 23, 2024
fed61bb
#1876 Add isAddressWhitelistedCallData overload
DmytroNazarenko Apr 24, 2024
cafa20d
#1719 small fixes
olehnikolaiev Apr 24, 2024
ac59ebb
#1719 add effectiveGasPrice to receipt
olehnikolaiev Apr 24, 2024
34780be
#1719 eth_call improvement
olehnikolaiev Apr 24, 2024
0d99d32
#1719 strict chainId check in streamRLP
olehnikolaiev Apr 24, 2024
0fa32a3
#1719 feeHistory improvements
olehnikolaiev Apr 24, 2024
4c2d7af
#1719 fix tests
olehnikolaiev Apr 24, 2024
1bfeba4
IS-864 bls sync config
olehnikolaiev Apr 24, 2024
7e944cd
#1876 Add FlexibleDeploymentPatch
DmytroNazarenko Apr 24, 2024
b6dee22
#1719 fix tests
olehnikolaiev Apr 24, 2024
804aef3
IS-864 bls sync config
olehnikolaiev Apr 24, 2024
8e0eeff
#1719 fix historic node
olehnikolaiev Apr 25, 2024
c928244
#1876 Pass 2 parameters if patch is enabled
DmytroNazarenko Apr 25, 2024
b44e87f
SKALED-1878 Colorful logs
dimalit Apr 28, 2024
bdbd077
Merge pull request #1880 from skalenetwork/enhancement/SKALED-1878-un…
dimalit Apr 29, 2024
1615a5e
#1719 fix txn proccessing
olehnikolaiev Apr 29, 2024
18847ba
#1719 fix eth_getBlockByNumber call
olehnikolaiev Apr 30, 2024
bcc31af
#1719 fix getTransaction
olehnikolaiev Apr 30, 2024
a1e8069
IS 864 better exception description
olehnikolaiev Apr 30, 2024
b427164
Merge branch 'v3.19.0' into feature/1719-eip1559
olehnikolaiev Apr 30, 2024
a7590fb
#1719 format code
olehnikolaiev Apr 30, 2024
3181ea4
#1719 small improvements
olehnikolaiev Apr 30, 2024
e544bda
SKALED-1877 Add blockHash support
dimalit May 2, 2024
0da8609
SKALED-1877 Fix wrong filter range
dimalit May 3, 2024
7d612ed
IS-864 bls sync config
olehnikolaiev May 3, 2024
fbb353c
SKALED-1877 Throw if blockHash doesn't exist or empty
dimalit May 3, 2024
55f1b96
Merge pull request #1884 from skalenetwork/feature/SKALED-1877-suppor…
dimalit May 4, 2024
d7ba751
Merge branch 'v3.19.0' into feature/1719-eip1559
olehnikolaiev May 7, 2024
d385944
806 consensus improvements
kladkogex May 7, 2024
b488ef2
806 improve consensus
kladkogex May 7, 2024
aafb27c
#806 enable patches
kladkogex May 7, 2024
84e3099
806 fix patch names
kladkogex May 7, 2024
395b3a8
806 fix patch naming
kladkogex May 7, 2024
74d215d
806 improve consensus github flow
kladkogex May 7, 2024
03b289f
IS-864 add debug logs
olehnikolaiev May 9, 2024
d072ea5
IS-864 update consensus
olehnikolaiev May 9, 2024
df125fe
Merge branch 'v3.19.0' into bug/IS-864-bls-sync-config
olehnikolaiev May 9, 2024
779ecb0
#1876 Add unit test for new deployment control
DmytroNazarenko May 10, 2024
ec40d75
IS-864 Small code rearrangement
dimalit May 10, 2024
61b1389
Merge pull request #1894 from skalenetwork/bug/IS-864-bls-sync-config…
olehnikolaiev May 13, 2024
006c55a
Merge pull request #1869 from skalenetwork/feature/1719-eip1559
olehnikolaiev May 13, 2024
b40c2a5
Merge branch 'v3.19.0' into bug/IS-864-bls-sync-config
olehnikolaiev May 13, 2024
fa24eab
#1876 Change call signature
DmytroNazarenko May 13, 2024
d678d09
IS 864 fix typo after merge
olehnikolaiev May 13, 2024
0c1e7ba
#1876 Change call signature
DmytroNazarenko May 13, 2024
af986c1
806 consensus improvements
kladkogex May 13, 2024
bf916a5
#1876 Update unit test
DmytroNazarenko May 13, 2024
994c436
#1876 Update unit test
DmytroNazarenko May 13, 2024
4237344
#1876 Update unit test
DmytroNazarenko May 13, 2024
33af97e
Merge branch 'v3.19.0' into enhancement/new-deploy-management
DmytroNazarenko May 13, 2024
03900a6
#1876 Add comments
DmytroNazarenko May 13, 2024
aa957df
#1876 Update comments
DmytroNazarenko May 14, 2024
538f60b
IS 864 add new config variable
olehnikolaiev May 15, 2024
e1f053a
Merge pull request #1893 from skalenetwork/enhancement/new-deploy-man…
DmytroNazarenko May 15, 2024
a88f7da
IS 864 functional tests
olehnikolaiev May 15, 2024
cef9482
806 update consensus
kladkogex May 16, 2024
d1afffa
Merge branch 'v3.19.0' into 806_consensus_improvements
kladkogex May 16, 2024
b19165b
Updated consensus
kladkogex May 16, 2024
543907d
806b fix build
kladkogex May 16, 2024
360f8d8
IS 864 update skale-ci-integrations ref
olehnikolaiev May 16, 2024
63eaca4
Merge branch 'v3.19.0' into bug/IS-864-bls-sync-config
olehnikolaiev May 16, 2024
2a2d16d
806 libconsensus
kladkogex May 16, 2024
35a2a78
Merge pull request #1891 from skalenetwork/bug/IS-864-bls-sync-config
DmytroNazarenko May 16, 2024
e5ba6b2
Merge branch 'v3.19.0' into 806_consensus_improvements
kladkogex May 16, 2024
932e183
Merge pull request #1888 from skalenetwork/806_consensus_improvements
DmytroNazarenko May 16, 2024
9d1d3cd
Merge branch 'v3.19.0' into develop-to-3.19.0
olehnikolaiev May 17, 2024
c60a824
Merge pull request #1902 from skalenetwork/develop-to-3.19.0
DmytroNazarenko May 17, 2024
e52fa44
Merge pull request #1901 from skalenetwork/v3.19.0
DmytroNazarenko May 17, 2024
421c5d1
Merge branch 'beta' into develop
DmytroNazarenko May 17, 2024
859d742
Merge pull request #1904 from skalenetwork/develop
DmytroNazarenko May 17, 2024
c8f3c74
Merge remote-tracking branch 'origin/beta' into stable-to-beta
dimalit May 29, 2024
5a08172
Merge pull request #1908 from skalenetwork/stable-to-beta
DmytroNazarenko May 30, 2024
bff6ece
bug 1911 eth feeHistory
olehnikolaiev Jun 6, 2024
8cb6ecf
#1911 format
olehnikolaiev Jun 6, 2024
cbda0bd
#1911 fix unittests
olehnikolaiev Jun 6, 2024
d2cbf12
Merge pull request #1915 from skalenetwork/beta
DmytroNazarenko Jun 7, 2024
48ad689
Merge branch 'develop' into bug/1911-eth-feeHistory-blockCount
olehnikolaiev Jun 10, 2024
a89f6d0
consensus 836 update consensus
olehnikolaiev Jun 11, 2024
a09a4d2
Merge pull request #1914 from skalenetwork/bug/1911-eth-feeHistory-bl…
olehnikolaiev Jun 11, 2024
e321dfb
Merge branch 'develop' into enhancement/consensus-836-more-catchup-logs
olehnikolaiev Jun 11, 2024
36cd865
Merge pull request #1918 from skalenetwork/enhancement/consensus-836-…
olehnikolaiev Jun 11, 2024
6bc6a27
Add setup-build-publish workflow
DmytroNazarenko Jun 11, 2024
e81939a
1774 revert hwm limits
olehnikolaiev Jun 12, 2024
38791ff
Merge pull request #1920 from skalenetwork/bug/1774-revert-hwm-limits
olehnikolaiev Jun 12, 2024
46761ca
Implement reusable workflows
DmytroNazarenko Jun 12, 2024
d619b43
Customize cmake options
DmytroNazarenko Jun 12, 2024
9f680b8
#1922 fix block by number error
olehnikolaiev Jun 12, 2024
3b420ca
Pass secrets into reusable workflow
DmytroNazarenko Jun 12, 2024
18cb2f5
Update setup-build-publish.yml
DmytroNazarenko Jun 13, 2024
44527ec
Update custom_build.yml
DmytroNazarenko Jun 13, 2024
2720745
Merge branch 'develop' into enhancement/add-historic-custom-builds
DmytroNazarenko Jun 13, 2024
2b72617
Update custom_build.yml
DmytroNazarenko Jun 13, 2024
a0d0c55
Merge pull request #1925 from skalenetwork/enhancement/add-historic-c…
DmytroNazarenko Jun 14, 2024
473e118
Merge branch 'develop' into bug/1922-block-by-number-error
olehnikolaiev Jun 14, 2024
348ef4b
Merge pull request #1923 from skalenetwork/bug/1922-block-by-number-e…
DmytroNazarenko Jun 14, 2024
044b2b9
Merge pull request #1928 from skalenetwork/develop
DmytroNazarenko Jun 18, 2024
600cf84
1932_better_consensus_patch_timestamp
kladkogex Jul 2, 2024
2e40040
Merge pull request #1933 from skalenetwork/1932_better_consensus_patc…
kladkogex Jul 3, 2024
bbadcdf
#1938 fix gas price for type2 txns
olehnikolaiev Jul 9, 2024
951f7fa
Merge pull request #1939 from skalenetwork/bug/1938-blockexplorer-typ…
DmytroNazarenko Jul 9, 2024
8f89f61
Merge branch 'beta' into develop
DmytroNazarenko Jul 10, 2024
7647ca5
Merge pull request #1941 from skalenetwork/develop
DmytroNazarenko Jul 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
144 changes: 22 additions & 122 deletions .github/workflows/custom_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,126 +25,26 @@ on:
default: RelWithDebInfo

jobs:
main_job:
runs-on: self-hosted
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
BUILD_TYPE: ${{ github.event.inputs.build_type }}
steps:
- name: update apt
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test || true
sudo apt-get update || true
- name: install packages
run: |
sudo apt-get -y remove libzmq* || true
sudo apt-get -y install software-properties-common gcc-9 g++-9 || true
core_build:
uses: ./.github/workflows/setup-build-publish.yml
with:
image_version: ${{ github.event.inputs.image_version }}
branch_name: ${{ github.event.inputs.branch_name }}
cmake_options: ${{ github.event.inputs.cmake_options }}
build_type: ${{ github.event.inputs.build_type }}
node_type: core
secrets:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}

- name: Use g++-9 and gcov-9 by default
run: |
echo "Updating all needed alternatives"
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 9
sudo update-alternatives --install /usr/bin/gcov gcov /usr/bin/gcov-9 9
sudo update-alternatives --install /usr/bin/gcov-dump gcov-dump /usr/bin/gcov-dump-9 9
sudo update-alternatives --install /usr/bin/gcov-tool gcov-tool /usr/bin/gcov-tool-9 9
echo "Checking alternative for gcc"
which gcc
gcc --version
echo "Checking alternative for g++"
which g++
g++ --version
echo "Checking alternative for gcov"
which gcov
gcov --version
echo "Checking alternative for gcov-dump"
which gcov-dump
gcov-dump --version
echo "Checking alternative for gcov-tool"
which gcov-tool
gcov-tool --version

- name: Extract repo name
run: echo ::set-env name=REPOSITORY_NAME::$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}')
shell: bash
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
- name: Extract branch name
shell: bash
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
id: extract_branch
- name: checkout
uses: actions/checkout@v2
with:
ref: ${{ github.event.inputs.branch_name }}
- name: Submodule update
run: |
rm -rf ./libconsensus || true
ls -1
git submodule update --init --recursive

- name: Prepare ccache timestamp
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
message("::set-output name=timestamp::${current_date}")
- name: Ccache cache files
uses: actions/[email protected]
with:
path: .ccache
key: ${ { matrix.config.name } }-ccache-${ { steps.ccache_cache_timestamp.outputs.timestamp } }
restore-keys: |
${ { matrix.config.name } }-ccache-
- name: Build dependencies
run: |
export CC=gcc-9
export CXX=g++-9
export TARGET=all
export CMAKE_BUILD_TYPE=$BUILD_TYPE
[[ $CMAKE_BUILD_TYPE = "Debug" ]] && export DEBUG_FLAG=1 || export DEBUG_FLAG=0
cd deps
./clean.sh
rm -f ./libwebsockets-from-git.tar.gz
./build.sh PARALLEL_COUNT=$(nproc) DEBUG=$DEBUG_FLAG
cd ..
- name: Configure all
run: |
export CC=gcc-9
export CXX=g++-9
export TARGET=all
export CMAKE_BUILD_TYPE=$BUILD_TYPE
mkdir -p build
cd build
cmake -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE ${{ github.event.inputs.cmake_options }} ..
cd ..
- name: Build all
run: |
export CC=gcc-9
export CXX=g++-9
export TARGET=all
export CMAKE_BUILD_TYPE=$BUILD_TYPE
cd build
make skaled -j$(nproc)
#echo "Ensure release mode skaled does not have any debug markers"
#strip skaled/skaled
cd ..

- name: Build and publish container
run: |
cp build/skaled/skaled scripts/skale_build/executable/
export BRANCH=${{ github.event.inputs.branch_name }}
[[ $BUILD_TYPE = "Debug" ]] && export VERSION_SUFFIX=debug || export VERSION_SUFFIX=release
export VERSION=${{ github.event.inputs.image_version }}-$VERSION_SUFFIX
echo "Version $VERSION"
export RELEASE=true
bash ./scripts/build_and_publish.sh

- name: Upload skaled binary as artifact
uses: actions/upload-artifact@v2
if: ${{ always() }}
with:
name: skaled
path: ./build/skaled/skaled
historic_build:
uses: ./.github/workflows/setup-build-publish.yml
with:
image_version: ${{ github.event.inputs.image_version }}
branch_name: ${{ github.event.inputs.branch_name }}
cmake_options: ${{ github.event.inputs.cmake_options }}
build_type: ${{ github.event.inputs.build_type }}
node_type: historic
secrets:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
2 changes: 1 addition & 1 deletion .github/workflows/functional-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
with:
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
repository: skalenetwork/skale-ci-integration_tests
ref: v3.18.0
ref: master
submodules: recursive
- name: Set up Node
uses: actions/[email protected]
Expand Down
168 changes: 168 additions & 0 deletions .github/workflows/setup-build-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,168 @@
name: 'Setup, Build and Publish'
on:
workflow_call:
inputs:
branch_name:
type: string
description: 'Branch name'
required: true
image_version:
type: string
description: 'Image version for docker hub'
required: true
cmake_options:
type: string
description: 'Additional cmake options'
required: false
build_type:
type: string
description: 'Build type of skaled binary'
required: true
node_type:
type: string
description: 'Node type of skaled build'
required: true
secrets:
DOCKER_USERNAME:
required: true
DOCKER_PASSWORD:
required: true

jobs:
main:
runs-on: self-hosted
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
BUILD_TYPE: ${{ inputs.build_type }}
steps:
- name: Prepare workflow variables
if: inputs.node_type != 'historic'
run: |
[[ $BUILD_TYPE = "Debug" ]] && export VERSION_SUFFIX=debug || export VERSION_SUFFIX=release
export VERSION=${{ inputs.image_version }}-$VERSION_SUFFIX
echo "VERSION=$VERSION" >> $GITHUB_ENV
export CMAKE_OPTS="${{ inputs.cmake_options }}"
echo "CMAKE_OPTS=$CMAKE_OPTS" >> $GITHUB_ENV
- name: Prepare workflow variables (historic)
if: inputs.node_type == 'historic'
run: |
[[ $BUILD_TYPE = "Debug" ]] && export VERSION_SUFFIX=debug || export VERSION_SUFFIX=release
export VERSION=${{ inputs.image_version }}-$VERSION_SUFFIX-historic
echo "VERSION=$VERSION" >> $GITHUB_ENV
export CMAKE_OPTS="-DHISTORIC_STATE=1 ${{ inputs.cmake_options }}"
echo "CMAKE_OPTS=$CMAKE_OPTS" >> $GITHUB_ENV
- name: update apt
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test || true
sudo apt-get update || true
- name: install packages
run: |
sudo apt-get -y remove libzmq* || true
sudo apt-get -y install software-properties-common gcc-9 g++-9 || true

- name: Use g++-9 and gcov-9 by default
run: |
echo "Updating all needed alternatives"
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 9
sudo update-alternatives --install /usr/bin/gcov gcov /usr/bin/gcov-9 9
sudo update-alternatives --install /usr/bin/gcov-dump gcov-dump /usr/bin/gcov-dump-9 9
sudo update-alternatives --install /usr/bin/gcov-tool gcov-tool /usr/bin/gcov-tool-9 9
echo "Checking alternative for gcc"
which gcc
gcc --version
echo "Checking alternative for g++"
which g++
g++ --version
echo "Checking alternative for gcov"
which gcov
gcov --version
echo "Checking alternative for gcov-dump"
which gcov-dump
gcov-dump --version
echo "Checking alternative for gcov-tool"
which gcov-tool
gcov-tool --version

- name: Extract repo name
run: echo ::set-env name=REPOSITORY_NAME::$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}')
shell: bash
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
- name: Extract branch name
shell: bash
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
id: extract_branch
- name: checkout
uses: actions/checkout@v2
with:
ref: ${{ inputs.branch_name }}
- name: Submodule update
run: |
rm -rf ./libconsensus || true
ls -1
git submodule update --init --recursive

- name: Prepare ccache timestamp
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
message("::set-output name=timestamp::${current_date}")
- name: Ccache cache files
uses: actions/[email protected]
with:
path: .ccache
key: ${ { matrix.config.name } }-ccache-${ { steps.ccache_cache_timestamp.outputs.timestamp } }
restore-keys: |
${ { matrix.config.name } }-ccache-
- name: Build dependencies
run: |
export CC=gcc-9
export CXX=g++-9
export TARGET=all
export CMAKE_BUILD_TYPE=$BUILD_TYPE
[[ $CMAKE_BUILD_TYPE = "Debug" ]] && export DEBUG_FLAG=1 || export DEBUG_FLAG=0
cd deps
./clean.sh
rm -f ./libwebsockets-from-git.tar.gz
./build.sh PARALLEL_COUNT=$(nproc) DEBUG=$DEBUG_FLAG
cd ..
- name: Configure all
env:
CMAKE_OPTS: ${{ env.CMAKE_OPTS }}
run: |
export CC=gcc-9
export CXX=g++-9
export TARGET=all
export CMAKE_BUILD_TYPE=$BUILD_TYPE
mkdir -p build
cd build
cmake -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE $CMAKE_OPTS ..
cd ..
- name: Build all
run: |
export CC=gcc-9
export CXX=g++-9
export TARGET=all
export CMAKE_BUILD_TYPE=$BUILD_TYPE
cd build
make skaled -j$(nproc)
cd ..
- name: Build and publish container
env:
VERSION: ${{ env.VERSION }}
run: |
cp build/skaled/skaled scripts/skale_build/executable/
export BRANCH=${{ inputs.branch_name }}
export RELEASE=true
bash ./scripts/build_and_publish.sh

- name: Upload skaled binary as artifact
uses: actions/upload-artifact@v2
if: ${{ always() }}
with:
name: skaled-${{ inputs.node_type }}
path: ./build/skaled/skaled
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.18.2
3.19.0
2 changes: 1 addition & 1 deletion libconsensus
Submodule libconsensus updated 54 files
+4 −1 .github/workflows/build.yml
+6 −0 .github/workflows/dockerimage.yml
+3 −0 .idea/misc.xml
+51 −41 .idea/workspace.xml
+3 −2 Consensust.cpp
+6 −5 catchup/server/CatchupServerAgent.cpp
+3 −2 catchup/server/CatchupServerAgent.h
+72 −11 chains/Schain.cpp
+17 −4 chains/Schain.h
+7 −2 chains/SchainGettersSetters.cpp
+9 −5 crypto/CryptoManager.cpp
+21 −0 datastructures/BooleanProposalVector.cpp
+2 −0 datastructures/BooleanProposalVector.h
+1 −1 datastructures/CommittedBlockList.cpp
+10 −0 db/BlockProposalDB.cpp
+441 −0 docs/consensus-spec.md
+132 −0 monitoring/OptimizerAgent.cpp
+48 −0 monitoring/OptimizerAgent.h
+0 −2 network/Network.cpp
+18 −15 node/ConsensusEngine.cpp
+1 −1 node/ConsensusEngine.h
+10 −1 node/Node.cpp
+75 −61 pendingqueue/PendingTransactionsAgent.cpp
+17 −16 pendingqueue/TestMessageGeneratorAgent.cpp
+6 −0 pendingqueue/TestMessageGeneratorAgent.h
+135 −71 protocols/blockconsensus/BlockConsensusAgent.cpp
+11 −0 protocols/blockconsensus/BlockConsensusAgent.h
+3 −1 test/11_out_of_16/node1/Node.json
+3 −1 test/11_out_of_16/node10/Node.json
+3 −1 test/11_out_of_16/node11/Node.json
+3 −1 test/11_out_of_16/node2/Node.json
+3 −1 test/11_out_of_16/node3/Node.json
+3 −1 test/11_out_of_16/node4/Node.json
+3 −1 test/11_out_of_16/node5/Node.json
+3 −1 test/11_out_of_16/node6/Node.json
+3 −1 test/11_out_of_16/node7/Node.json
+3 −1 test/11_out_of_16/node8/Node.json
+3 −1 test/11_out_of_16/node9/Node.json
+3 −1 test/sixteennodes/node01/Node.json
+3 −1 test/sixteennodes/node02/Node.json
+3 −1 test/sixteennodes/node03/Node.json
+3 −1 test/sixteennodes/node04/Node.json
+3 −1 test/sixteennodes/node05/Node.json
+3 −1 test/sixteennodes/node06/Node.json
+3 −1 test/sixteennodes/node07/Node.json
+3 −1 test/sixteennodes/node08/Node.json
+3 −1 test/sixteennodes/node09/Node.json
+3 −1 test/sixteennodes/node10/Node.json
+3 −1 test/sixteennodes/node11/Node.json
+3 −1 test/sixteennodes/node12/Node.json
+3 −1 test/sixteennodes/node13/Node.json
+3 −1 test/sixteennodes/node14/Node.json
+3 −1 test/sixteennodes/node15/Node.json
+2 −1 test/sixteennodes/node16/Node.json
6 changes: 4 additions & 2 deletions libdevcore/JsonUtils.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,12 @@ std::string dev::jsonTypeAsString( json_spirit::Value_type _type ) {
}

void dev::requireJsonFields( json_spirit::mObject const& _o, std::string const& _config,
std::map< std::string, JsonFieldOptions > const& _validationMap ) {
std::map< std::string, JsonFieldOptions > const& _validationMap,
std::function< bool( const std::string& ) > _callbackForUnexpected ) {
// check for unexpected fiedls
for ( auto const& field : _o ) {
if ( !_validationMap.count( field.first ) ) {
// _callbackForUnexpected allows to accept ertain unexpected fields
if ( !_validationMap.count( field.first ) && !_callbackForUnexpected( field.first ) ) {
std::string const comment =
"Unexpected field '" + field.first + "' in config: " + _config;
cerror << comment << "\n"
Expand Down
8 changes: 6 additions & 2 deletions libdevcore/JsonUtils.h
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,10 @@ using JsonFieldOptions = std::pair< JsonTypeSet, JsonFieldPresence >;
@param _validationMap a map with json objects that would be checked. "objName" -> {js::str_type,
jsonField::Required}
*/
void requireJsonFields( json_spirit::mObject const& _o, std::string const& _configName,
std::map< std::string, JsonFieldOptions > const& _validationMap );
void requireJsonFields(
json_spirit::mObject const& _o, std::string const& _configName,
std::map< std::string, JsonFieldOptions > const& _validationMap,
std::function< bool( const std::string& ) > _callbackForUnexpected = []( const std::string& ) {
return false;
} );
} // namespace dev
2 changes: 1 addition & 1 deletion libdevcore/LevelDB.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@
#include <leveldb/write_batch.h>
#include <boost/filesystem.hpp>

#include "shared_mutex"
#include <secp256k1_sha256.h>
#include <shared_mutex>

namespace dev::db {
class LevelDB : public DatabaseFace {
Expand Down
12 changes: 0 additions & 12 deletions libethashseal/Ethash.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -130,18 +130,6 @@ void Ethash::verify( Strictness _s, BlockHeader const& _bi, BlockHeader const& _
}
}

void Ethash::verifyTransaction( ImportRequirements::value _ir, TransactionBase const& _t,
BlockHeader const& _header, u256 const& _startGasUsed ) const {
SealEngineFace::verifyTransaction( _ir, _t, _header, _startGasUsed );

if ( _ir & ImportRequirements::TransactionSignatures ) {
if ( _header.number() >= chainParams().EIP158ForkBlock ) {
uint64_t chainID = chainParams().chainID;
_t.checkChainId( chainID, chainParams().skaleDisableChainIdCheck );
} // if
}
}

u256 Ethash::childGasLimit( BlockHeader const& _bi, u256 const& _gasFloorTarget ) const {
u256 gasFloorTarget = _gasFloorTarget == Invalid256 ? 3141562 : _gasFloorTarget;
u256 gasLimit = _bi.gasLimit();
Expand Down
2 changes: 0 additions & 2 deletions libethashseal/Ethash.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,6 @@ class Ethash : public SealEngineBase {
StringHashMap jsInfo( BlockHeader const& _bi ) const override;
void verify( Strictness _s, BlockHeader const& _bi, BlockHeader const& _parent,
bytesConstRef _block ) const override;
void verifyTransaction( ImportRequirements::value _ir, TransactionBase const& _t,
BlockHeader const& _header, u256 const& _startGasUsed ) const override;
void populateFromParent( BlockHeader& _bi, BlockHeader const& _parent ) const override;

strings sealers() const override;
Expand Down
Loading
Loading