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

perf(dashmate)!: speedup dashmate command #1916

Open
wants to merge 324 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
324 commits
Select commit Hold shift + click to select a range
22137c7
fix(drive): inconsistent platform state and version during ABCI calls…
shumkov Mar 8, 2024
8030d3d
feat(platform)!: state transition fee increase and priorities (#1750)
QuantumExplorer Mar 8, 2024
b1d3a52
fix(drive): internal error on querying specific identity keys (#1728)
markin-io Mar 8, 2024
54471f6
chore: update testnet genesis and core nightly (#1758)
shumkov Mar 8, 2024
9a93eae
chore(release): update changelog and bump version to 1.0.0-dev.7 (#1759)
shumkov Mar 8, 2024
1ca71e3
refactor: strategy test start identities (#1749)
pauldelucia Mar 9, 2024
867108a
Merge branch 'v1.0-dev' into feat/register-documents-to-supporting-co…
pauldelucia Mar 9, 2024
65dcc26
small fix
QuantumExplorer Mar 10, 2024
1e5569a
fix: update strategy test document transitions with initial contract …
pauldelucia Mar 10, 2024
e831503
refactor: resolve various warnings during build or by clippy (#1761)
PastaPastaPasta Mar 10, 2024
18dee4c
refactor(drive): relax versioning of calls with fees (#1762)
QuantumExplorer Mar 10, 2024
1196a28
fix(platform)!: advanced data contract structure validation position …
QuantumExplorer Mar 11, 2024
e92cc41
chore(dashmate): upgrade to Core 20.1 (#1760)
shumkov Mar 11, 2024
7298616
refactor: drop unused includes; use calculate_sign_hash (#1767)
PastaPastaPasta Mar 13, 2024
a2ad3c4
chore!: update tenderdash to 0.14-dev.4 (#1770)
shumkov Mar 14, 2024
6cb2068
fix(platform)!: data contract validation improvements (#1768)
QuantumExplorer Mar 14, 2024
83d9424
feat(platform)!: key disabled at based on state transition block time…
QuantumExplorer Mar 14, 2024
825d963
feat(platform)!: identity update can not disable a key it is also add…
QuantumExplorer Mar 14, 2024
47cab98
fix(platform): wrong state used to get current validator set (#1773)
QuantumExplorer Mar 14, 2024
9c5d999
chore(release): update changelog and bump version to 1.0.0-dev.8 (#1774)
shumkov Mar 14, 2024
8405c30
refactor: make strategy start identities a new struct (#1764)
pauldelucia Mar 14, 2024
08f6b18
chore(dashmate): readme fixes (#1624)
pshenmic Mar 15, 2024
d2d389e
fix(drive): internal error on querying proofs (#1747)
markin-io Mar 15, 2024
f133e81
feat: created at updated at from block time (#1780)
QuantumExplorer Mar 15, 2024
ea18e91
chore: fix npm audit for follow-redirects package (#1781)
markin-io Mar 15, 2024
9c8d72c
feat: query retry on race condition (#1776)
QuantumExplorer Mar 16, 2024
6a62ae3
ci: enforce warnings as errors (#1783)
PastaPastaPasta Mar 16, 2024
77d62ab
feat(platform)!: created at block height and variants (#1784)
QuantumExplorer Mar 18, 2024
97dc0df
build: rs-tenderdash-abci 0.14.0-dev.9 (#1782)
lklimek Mar 18, 2024
faefb58
fix(sdk)!: don't allow duplicate mock expectations (#1788)
lklimek Mar 18, 2024
51797a6
fix: identity add keys in strategy tests (#1727)
pauldelucia Mar 19, 2024
5f93578
feat: updated descriptions and function names in strategy tests plus …
pauldelucia Mar 19, 2024
85a7f6c
ci: update doc build branch in action config (#1748)
thephez Mar 19, 2024
5493ae9
feat(dapi): use broadcast_tx instead of deprecated broadcast_tx_sync …
markin-io Mar 19, 2024
807942e
feat: identity state transition validation fixes (#1786)
QuantumExplorer Mar 19, 2024
d6688be
chore(release): update changelog and bump version to 1.0.0-dev.9 (#1790)
shumkov Mar 19, 2024
8c47e82
fix(strategy-tests): default identity nonce and document op contract …
pauldelucia Mar 20, 2024
4d8af75
test: added a test registering many random contracts in strategy test…
QuantumExplorer Mar 20, 2024
1582458
fix(platform)!: max state transition size (#1792)
QuantumExplorer Mar 21, 2024
d672ed8
perf(platform)!: use inline on versioned functions (#1793)
QuantumExplorer Mar 21, 2024
02481fc
feat(platform)!: various document validation improvements (#1795)
QuantumExplorer Mar 24, 2024
6947672
feat(dpp)!: validate document type name (#1798)
shumkov Mar 28, 2024
1ac3638
fix: state transition already in chain error on low credit transfer a…
markin-io Mar 28, 2024
b8fd57d
feat(strategy-tests): add extra_keys field for StartIdentities and us…
pauldelucia Mar 29, 2024
0f6a465
feat: pass asset lock vector rather than callback in strategies
pauldelucia Mar 31, 2024
3014b6f
feat(platform)!: mitigate issues of asset lock based transitions (#1796)
QuantumExplorer Mar 31, 2024
08bb6f6
Merge branch 'v1.0-dev' into strategy-asset-lock-proof-refactor
pauldelucia Apr 1, 2024
3be578a
feat(drive-abci)!: better processing costs of state transitions (no s…
QuantumExplorer Apr 1, 2024
44608ed
Merge branch 'v1.0-dev' into strategy-asset-lock-proof-refactor
pauldelucia Apr 2, 2024
21cd7f7
refactor(strategy-tests): take a vector of asset lock proofs rather t…
pauldelucia Apr 2, 2024
642ff91
chore(sdk): export various libraries in rs-sdk (#1802)
QuantumExplorer Apr 3, 2024
4bb24fb
fix(sdk): not bumping nonce on contract creation (#1801)
markin-io Apr 3, 2024
2fdd949
fix(drive)!: versioning issues on epoch change (#1769)
shumkov Apr 4, 2024
3578f87
fix(drive): no longer build full grovedb when using verify feature (#…
QuantumExplorer Apr 4, 2024
7cb35e8
feat(platform)!: improved state processing fees (#1805)
QuantumExplorer Apr 4, 2024
a12abe6
feat(drive)!: provide protocol version in epoch info query (#1778)
shumkov Apr 4, 2024
94f1013
chore(release): update changelog and bump version to 1.0.0-dev.10 (#1…
shumkov Apr 4, 2024
5819113
refactor(platform)!: reduce dependencies, and get verify feature to b…
QuantumExplorer Apr 8, 2024
8d9fd15
refactor(dpp): generic wasm error (#1803)
markin-io Apr 9, 2024
acfe3c6
refactor: reduce dependencies and update ring sub dependency (#1809)
QuantumExplorer Apr 10, 2024
c48f216
chore(sdk): patch tower sub dependency to use new index_map version (…
QuantumExplorer Apr 10, 2024
b322c81
chore: fix node-tar security vulnerability (#1813)
markin-io Apr 11, 2024
96589cc
fix(dpp)!: incorrect json schema compatibility validation (#1814)
shumkov Apr 12, 2024
60ac47d
feat: register init contracts on second block of strategy (#1808)
pauldelucia Apr 13, 2024
e17ecfe
chore: update tenderdash-abci
QuantumExplorer Apr 13, 2024
8a61c85
feat(sdk): reuse dapi connections (#1815)
lklimek Apr 13, 2024
aca3ab5
refactor(sdk)!: rename crate rs-sdk to dash-sdk (#1811)
lklimek Apr 13, 2024
f553b70
feat(platform): query any element in Platform state (#1816)
QuantumExplorer Apr 15, 2024
56a4d88
fix(sdk): dapi client pool should separate platform and core clients …
lklimek Apr 16, 2024
fa72ffe
feat(platform)!: identity create replay protection (#1819)
QuantumExplorer Apr 16, 2024
36a7dcc
fix(platform)!: a withdrawal failure from core should never cause pla…
QuantumExplorer Apr 18, 2024
5d51032
chore: bump to dev.11 (#1822)
QuantumExplorer Apr 18, 2024
dde03fc
feat(drive-abci): configure dir to store rejected txs (#1823)
lklimek Apr 19, 2024
2a5aac3
chore(dapi): update autogenerated clients (#1827)
shumkov Apr 22, 2024
e71f92c
feat(platform)!: ability to transfer documents (#1826)
QuantumExplorer Apr 22, 2024
1c9c669
fix: add tls-webpki-roots to support tls on mobile (Android, iOS) (#1…
HashEngineering Apr 23, 2024
5404679
feat(dapi)!: split getStatus into two endpoints (#1812)
markin-io Apr 24, 2024
0b4a733
feat(sdk): add query for data contract history (#1787)
markin-io Apr 25, 2024
377087b
feat(platform)!: basic nft support (#1829)
QuantumExplorer Apr 25, 2024
122bbb9
feat(wallet-lib): optional sync of the account (#1830)
markin-io Apr 25, 2024
2a331c1
chore(dashmate): limit concurrent state transition checks (#1824)
shumkov Apr 26, 2024
cfdc7dd
feat!: getIdentitiesContractKeys endpoint (#1766)
markin-io Apr 27, 2024
6de96cd
chore(release): update changelog and bump version to 1.0.0-dev.12 (#1…
shumkov Apr 29, 2024
7e1e91c
feat: make purchase document public
pauldelucia Apr 29, 2024
c8262fa
Merge branch 'v1.0-dev' of https://github.com/dashpay/platform into v…
pauldelucia Apr 29, 2024
b47245f
feat: make document tranfers public
pauldelucia Apr 29, 2024
4ea0310
feat: make sdk document purchases public (#1832)
pauldelucia Apr 29, 2024
4566ad9
feat: make sdk files public
pauldelucia Apr 29, 2024
8e4fbde
Merge branch 'v1.0-dev' into feat/public-document-price-update
pauldelucia Apr 29, 2024
d71bfc4
feat: serialize for indexes and change error messages to strings
pauldelucia Apr 30, 2024
5612b31
fix(platform): npm audit security fix (#1836)
pshenmic May 5, 2024
8073c3f
feat(dashmate): handle docker pull error on images update (#1685)
pshenmic May 6, 2024
751ee6e
fix a test
pauldelucia May 7, 2024
02d4ad0
Merge branch 'v1.0-dev' into feat/public-document-price-update
pauldelucia May 7, 2024
c7a1b0f
feat: use all current identities for strategy test state transitions …
pauldelucia May 7, 2024
2b56263
refactor(platform)!: document creation/update/deletion does not refet…
QuantumExplorer May 7, 2024
63d06f6
refactor(sdk)!: don't return Arc in SdkBuilder (#1838)
lklimek May 7, 2024
ddc9c0c
Merge branch 'v1.0-dev' into feat/public-document-price-update
pauldelucia May 8, 2024
fbdfef5
feat: make start identities number u16
pauldelucia May 8, 2024
e624e02
chore: observability and security for HTTP gateway (#1825)
shumkov May 8, 2024
1185bc5
feat: put index serialization behind feature
pauldelucia May 9, 2024
76836ac
Merge branch 'v1.0-dev' into feat/public-document-price-update
pauldelucia May 9, 2024
26abf50
chore: updates needed for compatibility with nfts in the tui (#1833)
pauldelucia May 9, 2024
3c2c524
Merge remote-tracking branch 'origin' into feat/make-start-identities…
pauldelucia May 9, 2024
b34de38
feat: make start identities number u16 (#1841)
pauldelucia May 9, 2024
54623e2
chore(release): update changelog and bump version to 1.0.0-dev.13 (#1…
shumkov May 9, 2024
ed36e73
refactor: rename `DataContractConfig.validate_config_update` (#1843)
shumkov May 13, 2024
7e5b932
refactor: rename `validate` to `full_validation` (#1845)
shumkov May 13, 2024
e1a6191
feat(dashmate): check for DKG before stopping node (#1683)
pshenmic May 14, 2024
c04d6ac
fix!: data contract transition validation issues (#1835)
shumkov May 15, 2024
e80854c
chore(release): update changelog and bump version to 1.0.0-dev.14 (#1…
shumkov May 17, 2024
fc5c7b8
feat: implement mempool document counter in strategy tests
pauldelucia May 19, 2024
f15725b
change to 10 eligible identities and add warning if there are 0
pauldelucia May 20, 2024
3e163aa
docs(drive-abci): added some comments on the initial core height and …
QuantumExplorer May 21, 2024
74f552f
feat: implement mempool document counter in strategy tests (#1848)
pauldelucia May 21, 2024
d7b4541
chore(drive): state transition observability (#1846)
shumkov May 22, 2024
46b8b3e
chore(release): update changelog and bump version to 1.0.0-dev.15 (#1…
shumkov May 22, 2024
ff8e7c5
feat(dpp): random documents based on JSON schema (#1710)
fominok May 22, 2024
e81e699
fix(sdk)!: dapi-grpc generated files overwritten on conflicting featu…
lklimek May 23, 2024
d87f150
fix(sdk): invalid error returned when identity create fails (#1856)
lklimek May 28, 2024
4224881
fix: security vulnerabilities in NPM deps (#1860)
shumkov May 28, 2024
5caf216
chore(dapi)!: disable unnecessary for v1 endpoints (#1857)
shumkov May 28, 2024
710d0ef
perf(dapi): use cached core height in streaming endpoints (#1865)
shumkov May 29, 2024
c79e8fa
perf(dapi): get many transactions at once (#1858)
shumkov May 29, 2024
bc5f55d
perf(dapi): cache `getBestBlockHash` endpoint (#1867)
shumkov May 30, 2024
3ab5e4f
perf(dapi): cache `getBlockchainStatus` endpoint (#1866)
shumkov May 30, 2024
9bf1bff
feat(dapi): introduce `getBestBlockHeight` endpoint (#1863)
shumkov May 30, 2024
18fa8a3
feat: make data contract factory and json schema validator public
pauldelucia Jun 4, 2024
7d3ba7f
fix: validator field didn't need to be public for JsonSchemaValidator
pauldelucia Jun 4, 2024
c03a5f8
chore(dpp): make data contract factory and json schema validator publ…
pauldelucia Jun 4, 2024
e7bfefa
chore: temp squash of masternode voting into higher branch (#1877)
QuantumExplorer Jun 11, 2024
c000f54
chore: autogenerated grpc code
QuantumExplorer Jun 11, 2024
52aff41
chore: mute NPM audit warnings (#1879)
shumkov Jun 11, 2024
5ffed4b
fix(drive): contested document resolution with masternode voting batc…
QuantumExplorer Jun 11, 2024
2d30333
chore: renamed back vote_choices to votes on places where it had been…
QuantumExplorer Jun 11, 2024
3193aaf
chore: validate that contested index is unique (#1881)
shumkov Jun 11, 2024
316db6e
fix: added description keyword to schema for contested index
QuantumExplorer Jun 11, 2024
566b350
feat: contender serialization (#1882)
QuantumExplorer Jun 12, 2024
2c9368a
perf(dapi)!: replace `getMnListDiff` with a streaming endpoint (#1859)
shumkov Jun 12, 2024
75398b7
refactor(drive): encapsulate chain lock validation quorum logic (#1868)
shumkov Jun 14, 2024
5f287ac
fix: cleanup fix and remove identitiesIdsOnly Vote State query (#1890)
QuantumExplorer Jun 14, 2024
9919a8f
feat(sdk)!: impl Fetch/FetchMany for masternode voting endpoints (#1864)
lklimek Jun 14, 2024
4dd34e2
fix: small fix for test: test_document_creation_on_contested_unique_i…
QuantumExplorer Jun 16, 2024
6ce465d
fix: contested unique indexes can only be on non mutable document typ…
QuantumExplorer Jun 17, 2024
42d8573
fix: build broken after merge of contested unique indexes validation …
lklimek Jun 17, 2024
ff4f81b
feat: remove votes of removed masternodes when collateral is moved (#…
QuantumExplorer Jun 18, 2024
a75ca37
fix: contested resources query fixes (#1896)
QuantumExplorer Jun 18, 2024
9e99878
chore: update websocket client (#1895)
shumkov Jun 19, 2024
966f29f
fix: sum tree verification with specialized balances (#1899)
QuantumExplorer Jun 20, 2024
7443cb5
chore: update Karma to recent version (#1901)
shumkov Jun 22, 2024
9edcd10
fix(dashmate): background SSL renewal stuck on error (#1897)
shumkov Jun 22, 2024
69134e4
test(sdk): masternode voting SDK tests (#1893)
lklimek Jun 23, 2024
e1e85b8
refactor(dpp): change String and ByteArray DocumentPropertyType sizes…
pauldelucia Jun 23, 2024
a89d854
perf(drive)!: verify instant lock signatures with Drive (#1875)
shumkov Jun 23, 2024
366ad2c
make vote module public
pauldelucia Jun 24, 2024
8ebdd67
fix(dashmate): failed to read docker data on update (#1903)
pshenmic Jun 24, 2024
467bfa7
fix: contested document resolution fixes 2 and improvement to mastern…
QuantumExplorer Jun 25, 2024
b33eb5a
fix: voting proofs work as intended and various fixes (#1910)
QuantumExplorer Jun 28, 2024
ce231ee
perf: speedup dashmate command
shumkov Jun 29, 2024
fde9811
chore(release): update changelog and bump version to 1.0.0-dev.16 (#1…
shumkov Jun 29, 2024
f83ec20
chore: more work
shumkov Jun 29, 2024
48f41d5
chore: define oclif commands
shumkov Jun 30, 2024
f41da41
chore: add cache
shumkov Jun 30, 2024
5a6d54c
chore: update yarn version to fix esbuild EACCES issue
shumkov Jun 30, 2024
e9207e9
refactor: switch proxy injection mode for bundling compatibility
shumkov Jun 30, 2024
1bd3656
chore: remove debug output
shumkov Jun 30, 2024
ffbced2
style: fix linting errors
shumkov Jun 30, 2024
f1713f2
perf: use bash script to run dashmate instead of yarn
shumkov Jun 30, 2024
7dce346
refactor: move dashmate scripts from root to dashmate package
shumkov Jun 30, 2024
c7adc94
fix: invalid params passed to DefaultConfigs
shumkov Jun 30, 2024
1561c9c
feat: add dev script for dashmate to run without build with debug output
shumkov Jun 30, 2024
281c01c
feat: add dashmate dev and verbose error if dashmate is not built
shumkov Jun 30, 2024
b7d4fef
chore: verbose error about yarn script deprecation
shumkov Jun 30, 2024
ccde6af
fix(sdk): state transition broadcast missing contract provider (#1913)
lklimek Jun 30, 2024
a32f084
build: update rs-tenderdash-abci to 1.0.0-dev.1 (#1909)
lklimek Jun 30, 2024
12bd894
fix: dashmate packaging
shumkov Jun 30, 2024
d426307
revert: dashmate dev command since it's not gonna work anyway
shumkov Jun 30, 2024
331f9d3
chore: remove unused `@yarnpkg/esbuild-plugin-pnp`
shumkov Jun 30, 2024
fecaa9b
chore: remove commented code
shumkov Jun 30, 2024
aa122ff
doc: add a comment
shumkov Jun 30, 2024
4da1e4f
refactor: remove unnecessary injection configuration
shumkov Jun 30, 2024
bc5ecd1
Merge branch 'v1.0-dev' into perf/dashmate-startup
shumkov Jun 30, 2024
48819ba
ci: fix linking
shumkov Jun 30, 2024
741f651
Merge remote-tracking branch 'origin/perf/dashmate-startup' into perf…
shumkov Jun 30, 2024
877c562
chore: move yarn global data to repo
shumkov Jul 1, 2024
245dc46
fix: incorrect proofs are returned for various state transitions (#1912)
shumkov Jul 1, 2024
93390a8
chore: remove ultra (doesn't work)
shumkov Jul 1, 2024
9db9328
chore(dpp)!: do not allow `dependentSchemas` (#1888)
shumkov Jul 1, 2024
903e4d5
refactor: extract document faker to crate (#1887)
shumkov Jul 1, 2024
4318a45
revert: bring back pnp since pnpm has a lot of issues
shumkov Jul 1, 2024
5857b9e
fix: Abstain and Lock trees for votes are now always first and fixed …
QuantumExplorer Jul 2, 2024
670218a
build: use ubuntu-platform github runner hardware for all github acti…
lklimek Jul 2, 2024
815e747
build: upgrade rs-tenderdash-abci to v1.0.0 and tenderdash to v1.0.0 …
lklimek Jul 3, 2024
868be18
fix(sdk): panic GrpcContextProvider on async call inside sync code (#…
lklimek Jul 3, 2024
c6f338c
fix(drive): add validation that an identity can not apply to be a con…
QuantumExplorer Jul 4, 2024
4f71941
test(sdk): increase test coverage of masternode voting (#1906)
lklimek Jul 4, 2024
28c2c68
Merge branch 'v1.0-dev' into feat/contestedDocumentResolutionWithMast…
QuantumExplorer Jul 4, 2024
31734d8
fix: fixed voting strategy tests and cleanup
QuantumExplorer Jul 4, 2024
bedcde3
feat(sdk): support mocking of error responses (#1926)
lklimek Jul 4, 2024
9e6531a
chore: revisit system data contracts (#1889)
shumkov Jul 5, 2024
9ee1eae
fix: minor issues detected by github actions (#1928)
lklimek Jul 5, 2024
372a801
test(sdk): regenerate test vectors for masternode voting (#1927)
lklimek Jul 5, 2024
239371c
test(sdk): disable failing tests for bugs scheduled for future (#1930)
lklimek Jul 5, 2024
e44bfde
revert: remove ultra (doesn't work)
shumkov Jul 5, 2024
58e687f
fix: merkle root hash verification failed on devnet (#1929)
shumkov Jul 5, 2024
74c26ad
fix: command config:set not found
shumkov Jul 6, 2024
53b22d8
build: fix scripts
shumkov Jul 6, 2024
4c73d79
build: more fix scripts
shumkov Jul 6, 2024
ad64ced
chore: remove unnecessary files
shumkov Jul 6, 2024
9194f31
docs: add llvm to README.md (#1908)
thephez Jul 6, 2024
8a2216f
test: fix documentTransition.hasPrefundedBalance is not a function (#…
shumkov Jul 6, 2024
61058c5
Merge branch 'v1.0-dev' into feat/contestedDocumentResolutionWithMast…
QuantumExplorer Jul 6, 2024
31029b5
chore: update masternode voting tests after merging in v1
QuantumExplorer Jul 6, 2024
c42b871
Merge branch 'feat/contestedDocumentResolutionWithMasternodeVoting' o…
QuantumExplorer Jul 6, 2024
21b903e
fix: final clean up and fixing of contested resource voting PR
QuantumExplorer Jul 6, 2024
37520df
chore: better logging for devnet upgrade protocol test (#1925)
ogabrielides Jul 8, 2024
b1b3734
fix: duplicate fields defined in DPNS contract
shumkov Jul 8, 2024
bde2d04
Merge branch 'refs/heads/v1.0-dev' into perf/dashmate-startup
shumkov Jul 8, 2024
fcbed15
chore: update locks after merge
shumkov Jul 8, 2024
0effb07
feat(platform)!: proofs v1 support (#1934)
QuantumExplorer Jul 9, 2024
bff4b65
fix(dpp)!: data contract validation issues (#1851)
shumkov Jul 9, 2024
92303ad
Merge branch 'refs/heads/v1.0-dev' into feat/contestedDocumentResolut…
shumkov Jul 9, 2024
85faf50
chore: update Cargo lock
shumkov Jul 9, 2024
eca0a1e
style(drive): update formatting
shumkov Jul 9, 2024
6632b3b
feat(dashmate): import existing Core data (#1915)
shumkov Jul 9, 2024
a21ca60
Merge branch 'refs/heads/v1.0-dev' into perf/dashmate-startup
shumkov Jul 9, 2024
8c29ea7
style(dashmate): fix formatting
shumkov Jul 9, 2024
4bd66e6
test(dashmate): fix dependencies in tests
shumkov Jul 9, 2024
7732bd9
test: fix contract tests
shumkov Jul 9, 2024
f6c195d
docs: badge link for CI was broken in README.md (#1932)
thephez Jul 9, 2024
76a9a00
test: temporary skip withdrawal tests
shumkov Jul 9, 2024
affbef7
chore: use local_1 to read contract ID
shumkov Jul 9, 2024
5ca9568
docs: remove comment
shumkov Jul 9, 2024
cd6f7c0
test: fix dependencies in tests
shumkov Jul 9, 2024
138e4f0
test: temporary skip withdrawal tests
shumkov Jul 9, 2024
82160a6
ci: change volume scripts path
shumkov Jul 9, 2024
de883f9
feat(dashmate): verify system requirements (#1914)
shumkov Jul 9, 2024
0e29160
chore: update to latest GroveDB (Proofs v1)
QuantumExplorer Jul 9, 2024
11a7bc7
chore(dashmate): provide debug information if version check fails (#1…
shumkov Jul 9, 2024
89d6693
Merge branch 'refs/heads/v1.0-dev' into perf/dashmate-startup
shumkov Jul 9, 2024
299ffbf
chore: update yarn lock
shumkov Jul 9, 2024
72c65b6
feat(platform)!: contested document resolution with masternode voting…
QuantumExplorer Jul 9, 2024
11645a6
chore(dashmate): core RPC platform services authentication (#1883)
shumkov Jul 9, 2024
c665a70
fix!: allowed to make required fields optional (#1919)
shumkov Jul 10, 2024
393ced5
refactor: use library for feature version (#1938)
QuantumExplorer Jul 10, 2024
729d555
fix(dashmate): cannot read properties of null (reading '1') (#1939)
shumkov Jul 10, 2024
af0ee39
Merge branch 'refs/heads/v1.0-dev' into perf/dashmate-startup
shumkov Jul 11, 2024
4a63e43
chore: update lock
shumkov Jul 11, 2024
a519738
refactor: remove unused dockerCompose
shumkov Jul 11, 2024
b4cbf56
fix: invalid deps
shumkov Jul 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
9 changes: 7 additions & 2 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
# TODO: We shouldn't go with tokio_unstable to production

[target.aarch64-unknown-linux-musl]
rustflags = [ "-C", "target-feature=-crt-static" ]
rustflags = ["-C", "target-feature=-crt-static", "--cfg", "tokio_unstable"]

[target.x86_64-unknown-linux-musl]
rustflags = [ "-C", "target-feature=-crt-static" ]
rustflags = ["-C", "target-feature=-crt-static", "--cfg", "tokio_unstable"]

[target.aarch64-unknown-linux-gnu]
linker = "aarch64-linux-gnu-gcc"

[build]
rustflags = ["--cfg", "tokio_unstable"]
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ packages/*/dist
packages/*/wasm
packages/*/lib/wasm
packages/*/node_modules
packages/*/.env

!packages/platform-test-suite/test

Expand Down
37 changes: 37 additions & 0 deletions .github/actions/javy/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
name: "Setup Javy"
description: "Setup Javy binaries"
inputs:
version:
description: Javy version to use
required: false
default: "1.4.0"
runs:
using: composite
steps:
- name: Install Javy
shell: bash
run: |
set -e

case "${{ runner.arch }}" in
"ARM64")
JAVY_ARCH="arm-linux"
;;
"X64")
JAVY_ARCH="x86_64-linux"
;;
*)
echo "Unsupported architecture: ${{ runner.arch }}"
exit 1
;;
esac

curl -Ls "https://github.com/bytecodealliance/javy/releases/download/v${{ inputs.version }}/javy-${JAVY_ARCH}-v${{ inputs.version }}.gz" | gunzip > javy

chmod +x javy
sudo mv javy /usr/local/bin/javy

- name: Verify Javy installation
shell: bash
run: javy --version
10 changes: 6 additions & 4 deletions .github/actions/local-network/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ runs:
key: local-network-volumes/${{ steps.dashmate-fingerprint.outputs.sha }}

- name: Restore dashmate volumes
run: ./scripts/dashmate/volumes/restore.sh
run: ./packages/dashmate/scripts/volumes/restore.sh
shell: bash
if: steps.local-network-data.outputs.cache-hit == 'true'

Expand All @@ -51,10 +51,10 @@ runs:
set -ex

# create tenderdash blocks every 10s to speed up test suite
yarn dashmate config set --config=local platform.drive.tenderdash.consensus.createEmptyBlocksInterval "10s"
./scripts/dashmate config set --config=local platform.drive.tenderdash.consensus.createEmptyBlocksInterval "10s"

# collect drive logs for bench suite
yarn dashmate config set --config=local platform.drive.abci.logs.stdout.level "trace"
./scripts/dashmate config set --config=local platform.drive.abci.logs.stdout.level "trace"

./scripts/setup_local_network.sh
./scripts/configure_test_suite.sh
Expand All @@ -63,7 +63,7 @@ runs:
if: steps.local-network-data.outputs.cache-hit != 'true'

- name: Dump dashmate volumes
run: ./scripts/dashmate/volumes/dump.sh
run: ./packages/dashmate/scripts/volumes/dump.sh
shell: bash
if: steps.local-network-data.outputs.cache-hit != 'true'

Expand Down Expand Up @@ -97,3 +97,5 @@ runs:
- name: Start local network
shell: bash
run: yarn start
env:
DEBUG: 1
2 changes: 1 addition & 1 deletion .github/actions/nodejs/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ runs:
using: composite
steps:
- name: Setup Node.JS
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: "20"

Expand Down
4 changes: 2 additions & 2 deletions .github/actions/rust/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ inputs:
toolchain:
description: Rust toolchain to use, stable / nightly / beta, or exact version
# The same as in /README.md
default: "stable"
default: "1.76"
target:
description: Target Rust platform
required: false
Expand Down Expand Up @@ -54,7 +54,7 @@ runs:
shell: bash
run: |
curl -Lo /tmp/protoc.zip \
"https://github.com/protocolbuffers/protobuf/releases/download/v22.0/protoc-22.0-linux-${{ steps.protoc_arch.outputs.arch }}.zip"
"https://github.com/protocolbuffers/protobuf/releases/download/v25.2/protoc-25.2-linux-${{ steps.protoc_arch.outputs.arch }}.zip"
unzip /tmp/protoc.zip -d ${HOME}/.local
echo "PROTOC=${HOME}/.local/bin/protoc" >> $GITHUB_ENV
export PATH="${PATH}:${HOME}/.local/bin"
Expand Down
7 changes: 6 additions & 1 deletion .github/package-filters/js-packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,12 @@ dash: &dash
dashmate:
- .github/workflows/tests*
- packages/dashmate/**
- *dash
- *dashpay-contract
- *masternode-reward-shares-contract
- *dpns-contract
- *withdrawals-contract
- *wallet-lib
- *dapi-client

'@dashevo/platform-test-suite':
- .github/workflows/tests*
Expand Down
12 changes: 11 additions & 1 deletion .github/package-filters/rs-packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,18 @@ dpns-contract: &dpns-contract
- .github/workflows/tests*
- packages/dpns-contract/**

json-schema-compatibility-validator: &json-schema-compatibility-validator
- .github/workflows/tests*
- packages/rs-json-schema-compatibility-validator/**

dpp: &dpp
- .github/workflows/tests*
- packages/rs-dpp/**
- *dashpay-contract
- *masternode-reward-shares-contract
- *dpns-contract
- *withdrawals-contract
- *json-schema-compatibility-validator
- packages/rs-platform-serialization/**
- packages/rs-platform-serialization-derive/**
- packages/rs-platform-value/**
Expand Down Expand Up @@ -54,9 +59,14 @@ rs-dapi-client: &dapi_client
- packages/rs-dapi-client/**
- *dapi_grpc

rs-sdk:
dash-sdk:
- .github/workflows/tests*
- packages/rs-drive-proof-verifier/**
- packages/rs-sdk/**
- *dapi_client
- *drive

random-document:
- .github/workflows/tests*
- packages/rs-random-document/**
- *dpp
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Publish docs via GitHub Pages
on:
push:
branches:
- master
- v1.0-dev

jobs:
build:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests-build-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ on:
jobs:
build-image:
name: Build ${{ inputs.name }} image
runs-on: [ "self-hosted", "linux", "arm64", "ubuntu-platform-4x" ]
runs-on: ["self-hosted", "linux", "arm64", "ubuntu-platform"]
steps:
- name: Check out repo
uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests-build-js.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:
jobs:
build-js:
name: Build JS
runs-on: [ "self-hosted", "linux", "arm64", "ubuntu-platform-4x" ]
runs-on: ["self-hosted", "linux", "arm64", "ubuntu-platform"]
steps:
- name: Configure AWS credentials and bucket region
uses: aws-actions/configure-aws-credentials@v4
Expand Down
12 changes: 8 additions & 4 deletions .github/workflows/tests-dashmate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,23 +49,25 @@ jobs:
key: build-js-artifacts/${{ github.sha }}

- name: Unpack JS build artifacts archive
run: tar -xf build-js-artifacts-${{ github.sha }}.tar
run: tar -xvf build-js-artifacts-${{ github.sha }}.tar

- name: Replace with pre-built images
run: |
set -x

# Login to ECR
DOCKER_HUB_ORG="${{ vars.AWS_ACCOUNT_ID }}.dkr.ecr.${{ vars.AWS_REGION }}.amazonaws.com"
aws ecr get-login-password --region ${{ vars.AWS_REGION }} | docker login --username AWS --password-stdin $DOCKER_HUB_ORG

SHA_TAG=sha-${{ github.sha }}

# Drive
DRIVE_IMAGE_AND_VERSION=$(yarn dashmate config get --config=local platform.drive.abci.docker.image)
DRIVE_IMAGE_AND_VERSION=$(./scripts/dashmate config get --config=local platform.drive.abci.docker.image)
docker pull $DOCKER_HUB_ORG/drive:$SHA_TAG
docker tag $DOCKER_HUB_ORG/drive:$SHA_TAG $DRIVE_IMAGE_AND_VERSION

# DAPI
DAPI_IMAGE_AND_VERSION=$(yarn dashmate config get --config=local platform.dapi.api.docker.image)
DAPI_IMAGE_AND_VERSION=$(./scripts/dashmate config get --config=local platform.dapi.api.docker.image)
docker pull $DOCKER_HUB_ORG/dapi:$SHA_TAG
docker tag $DOCKER_HUB_ORG/dapi:$SHA_TAG $DAPI_IMAGE_AND_VERSION

Expand Down Expand Up @@ -93,19 +95,21 @@ jobs:
if: inputs.restore_local_network_data == true

- name: Restore dashmate volumes
run: ./scripts/dashmate/volumes/restore.sh
run: ./packages/dashmate/scripts/volumes/restore.sh
if: steps.local-network-data.outputs.cache-hit == 'true'

- name: Run tests with cache
run: yarn workspace dashmate run mocha ${{ inputs.test-pattern }}
env:
DEBUG: 1
DASHMATE_E2E_TESTS_SKIP_IMAGE_BUILD: true
DASHMATE_E2E_TESTS_LOCAL_HOMEDIR: /home/ubuntu/.dashmate
if: steps.local-network-data.outputs.cache-hit == 'true'

- name: Run tests without cache
run: yarn workspace dashmate run mocha ${{ inputs.test-pattern }}
env:
DEBUG: 1
DASHMATE_E2E_TESTS_SKIP_IMAGE_BUILD: true
if: steps.local-network-data.outputs.cache-hit != 'true'

Expand Down
33 changes: 31 additions & 2 deletions .github/workflows/tests-rs-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,14 @@ jobs:
with:
components: clippy

- name: Setup Node.JS, required by json-schema-faker-rs
if: inputs.package == 'random-document'
uses: ./.github/actions/nodejs

- name: Setup Javy, required by json-schema-faker-rs
if: inputs.package == 'random-document'
uses: ./.github/actions/javy

- uses: clechasseur/rs-clippy-check@v3
with:
args: --package ${{ inputs.package }} --all-features --locked -- --no-deps
Expand All @@ -65,7 +73,7 @@ jobs:
cache: false

- name: Check formatting
run: exit `cargo fmt --check --package=${{ inputs.package }} | wc -l`
run: cargo fmt --check --package=${{ inputs.package }}

unused_deps:
name: Unused dependencies
Expand Down Expand Up @@ -106,6 +114,10 @@ jobs:
detect_structure_changes:
name: Detect immutable structure changes
runs-on: ubuntu-22.04
# FIXME: as we use `gh pr view` below, this check can only
# run on pull requests. We should find a way to run it
# when manual triggers are used.
if: github.event_name == 'pull_request'
steps:
- name: Checkout base commit
uses: actions/checkout@v4
Expand Down Expand Up @@ -176,6 +188,14 @@ jobs:
- name: Setup Rust
uses: ./.github/actions/rust

- name: Setup Node.JS, required by json-schema-faker-rs
if: inputs.package == 'random-document'
uses: ./.github/actions/nodejs

- name: Setup Javy, required by json-schema-faker-rs
if: inputs.package == 'random-document'
uses: ./.github/actions/javy

- name: Run tests
run: cargo test --package=${{ inputs.package }} --all-features --locked
env:
Expand All @@ -201,7 +221,15 @@ jobs:
- name: Setup Rust
uses: ./.github/actions/rust

- name: Get crate ${{ inputs.package }} info
- name: Setup Node.JS, required by json-schema-faker-rs
if: inputs.package == 'random-document'
uses: ./.github/actions/nodejs

- name: Setup Javy, required by json-schema-faker-rs
if: inputs.package == 'random-document'
uses: ./.github/actions/javy

- name: Get crate ${{ runner.arch }} info
id: crate_info
uses: ./.github/actions/crate_info
with:
Expand All @@ -218,6 +246,7 @@ jobs:
set -ex
features="${{ steps.crate_info.outputs.features }}"
fails=""
RUSTFLAGS="-D warnings"
cargo check --no-default-features --package "${{ inputs.package }}" --locked
for feature in $features ; do
echo " ============== Verify feature $feature =============="
Expand Down
16 changes: 9 additions & 7 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
types: [opened, synchronize, reopened, ready_for_review]
branches:
- master
- v[0-9]+\.[0-9]+-dev
- 'v[0-9]+\.[0-9]+-dev'
push:
branches:
- master
Expand Down Expand Up @@ -83,11 +83,13 @@ jobs:
uses: ./.github/workflows/tests-rs-package.yml
with:
package: ${{ matrix.rs-package }}
# Run drive and drive-abci linter on self-hosted 2x
lint-runner: ${{ contains(fromJSON('["drive-abci", "drive"]'), matrix.rs-package) && '[ "self-hosted", "linux", "arm64", "ubuntu-platform" ]' || '"ubuntu-22.04"' }}
# lint-runner: ${{ contains(fromJSON('["drive-abci", "drive"]'), matrix.rs-package) && '[ "self-hosted", "linux", "arm64", "ubuntu-platform" ]' || '"ubuntu-22.04"' }}
# FIXME: Clippy fails on github hosted runners, most likely due to RAM usage. Using self-hosted runners for now.
lint-runner: '[ "self-hosted", "linux", "arm64", "ubuntu-platform" ]'
# Run drive tests on self-hosted 4x
test-runner: ${{ contains(fromJSON('["drive-abci"]'), matrix.rs-package) && '[ "self-hosted", "linux", "arm64", "ubuntu-platform-4x" ]' || '[ "self-hosted", "linux", "arm64", "ubuntu-platform" ]' }}
check-each-feature: ${{ contains(fromJSON('["rs-sdk","rs-dapi-client","dapi-grpc","dpp","drive-abci"]'), matrix.rs-package) }}
test-runner: '[ "self-hosted", "linux", "arm64", "ubuntu-platform" ]'
check-each-feature: ${{ contains(fromJSON('["dash-sdk","rs-dapi-client","dapi-grpc","dpp","drive-abci"]'), matrix.rs-package) }}

rs-crates-security:
name: Rust crates security audit
if: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' || !github.event.pull_request.draft }}
Expand Down Expand Up @@ -126,9 +128,9 @@ jobs:
uses: actions/checkout@v4

- name: Setup Node.JS
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: "18"
node-version: "20"

- name: Enable corepack
run: corepack enable
Expand Down
Loading
Loading