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

Fix/aligned test 0.18 #9144

Closed
wants to merge 214 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
214 commits
Select commit Hold shift + click to select a range
8cc3c9a
Publish submitted txs via zmq
j-berman Jul 9, 2022
c0f3c5b
Fix use of rtxn without a mdb_txn_safe wrapper
hyc Jun 7, 2022
099fc1f
Fixed get_block_template_backlog performance
SChernykh Jul 22, 2022
1287074
randomx: update submodule
selsta Jul 24, 2022
265d6ca
device: set ledger min app version
selsta Jul 24, 2022
fac7c43
continue pool pruning even if a tx can't be found
j-berman Jul 1, 2022
309f6ba
build: prepare v0.18.1.0
selsta Jul 28, 2022
6075be9
feat(trezor): add HF15 support, BP+
ph4r05 Apr 12, 2022
2b83d00
ledger support for hf 15 (BP+, view tags)
j-berman Jun 21, 2022
9012593
Merge pull request #8451
luigi1111 Aug 8, 2022
3b6eb11
Merge pull request #8454
luigi1111 Aug 8, 2022
a50cceb
Merge pull request #8466
luigi1111 Aug 8, 2022
72490ca
Merge pull request #8483
luigi1111 Aug 8, 2022
5c33f40
Merge pull request #8455
luigi1111 Aug 9, 2022
dc2f548
Merge pull request #8470
luigi1111 Aug 9, 2022
68537fa
Merge pull request #8463
luigi1111 Aug 9, 2022
b9e8504
Merge pull request #8467
luigi1111 Aug 9, 2022
727bc5b
Merge pull request #8492
luigi1111 Aug 10, 2022
876c08d
Bump Gitian build instructions to v0.18.1.0 [Release Branch]
Aug 10, 2022
57e57c2
Merge pull request #8491
luigi1111 Aug 23, 2022
fc8a5d6
multisig: fix #8537 seed restore (suggestions by @UkoeHB)
j-berman Sep 1, 2022
3679925
Windows: fix unicode file path support
tobtoht Sep 2, 2022
401f5d9
Require user ack multisig is experimental to restore
j-berman Sep 6, 2022
09ee781
build: prepare v0.18.1.1
selsta Aug 23, 2022
0de1571
wallet2: fix missing subaddress indices in "light" exported outputs
moneromooo-monero Aug 7, 2022
5b98beb
wallet2: prevent importing outputs in a hot wallet
moneromooo-monero Aug 7, 2022
4b7eb57
wallet2: do not assume imported outputs must be non empty
moneromooo-monero Aug 7, 2022
93db74a
rpc: skip bootstrap nodes that are lower than last checkpoint
selsta Aug 19, 2022
b03d709
wallet2: fixes for export/import output flow
j-berman Aug 16, 2022
625147e
Fix missing semi-colon in error message
j-berman Sep 7, 2022
848a0c0
Fix segfault restoring encrypted multisig seed
j-berman Sep 7, 2022
0cbf557
allow exporting outputs in chunks
moneromooo-monero Aug 16, 2022
1d3657a
wallet2: better test on whether to allow output import
moneromooo-monero Aug 18, 2022
e29b2e9
wallet2: ensure imported outputs subaddresses are created
moneromooo-monero Aug 24, 2022
12e7c41
Merge pull request #5 from j-berman/restore-msig-encrypted-seed
j-berman Sep 7, 2022
6b9bbad
Merge pull request #8534
luigi1111 Sep 9, 2022
4b6a3fb
Merge pull request #8548
luigi1111 Sep 9, 2022
3178bbe
Merge pull request #8552
luigi1111 Sep 9, 2022
89f3d46
Merge pull request #8553
luigi1111 Sep 9, 2022
af4f97b
Merge pull request #8555
luigi1111 Sep 9, 2022
864a78e
wallet2: check wallet compatibility with daemon's hard fork version
j-berman Aug 26, 2022
0be63cf
Merge pull request #8544
luigi1111 Sep 15, 2022
7cbae6c
Merge pull request #8545
luigi1111 Sep 15, 2022
6adf03c
Second thread pool for IO
SChernykh Jun 14, 2022
07f8e9e
epee: dont shrink slice when storing to binary [release]
jeffro256 Sep 20, 2022
09402d0
depends: remove unused Qt package
selsta Sep 19, 2022
7d358cd
repo: remove ldns leftovers
selsta Aug 10, 2022
1cd21bf
add an option to force-update multisig key exchange under some circum…
UkoeHB May 14, 2022
5ffa31c
wallet2: fail to establish daemon cxn == "Disconnected" cxn status
j-berman Sep 22, 2022
802c4bb
Move update_checkpoints() to a later stage
SChernykh Sep 22, 2022
d7445b5
workflows: ubuntu 18.04 is deprecated
selsta Sep 24, 2022
fdb3185
Merge pull request #8577
luigi1111 Sep 26, 2022
9885b8b
Merge pull request #8579
luigi1111 Sep 26, 2022
a7b0c93
Merge pull request #8582
luigi1111 Sep 26, 2022
0bef426
Merge pull request #8585
luigi1111 Sep 26, 2022
1f27fdf
Merge pull request #8588
luigi1111 Sep 26, 2022
853171b
build: prepare v0.18.1.2
selsta Sep 26, 2022
66184f3
Merge pull request #8597
luigi1111 Sep 27, 2022
401dda5
wallet_api: take priority into account when estimating fee
selsta Oct 13, 2022
85c9fe5
wallet2: fix create view-only wallet from existing wallet
j-berman Oct 18, 2022
1bb5d25
Fix dandelion++ fluff/stem bug with local txes
vtnerd Oct 25, 2022
5d4ace8
Merge pull request #8578
luigi1111 Oct 28, 2022
e6f9c00
Merge pull request #8594
luigi1111 Oct 28, 2022
02b24cb
workflows: ubuntu 18.04 is deprecated
selsta Nov 14, 2022
146cac0
p2p: fix back ping to discover healthy peers to connect to
j-berman Nov 15, 2022
8c53995
Fix static builds for Ubuntu 22.04
LocalMonero Sep 12, 2022
cbf636c
workflows: build gitian on tag
selsta Oct 1, 2022
38d4811
p2p: fix exclusive node DNS resolution for certain hosts [release]
jeffro256 Nov 16, 2022
2c24322
DNSResolver: fix not handling hostnames without dot characters [release]
jeffro256 Nov 21, 2022
5973985
workflows: set a public DNS when doing tests
selsta Nov 28, 2022
d052983
Merge pull request #8604
luigi1111 Dec 1, 2022
f5d701c
Merge pull request #8611
luigi1111 Dec 1, 2022
cce3095
Merge pull request #8615
luigi1111 Dec 1, 2022
abd37fc
Merge pull request #8628
luigi1111 Dec 1, 2022
47b41ea
Merge pull request #8636
luigi1111 Dec 1, 2022
8cb1034
Merge pull request #8642
luigi1111 Dec 1, 2022
f698f2b
Refactored rx-slow-hash.c
SChernykh Dec 10, 2022
cbc297a
common: add missing includes
selsta Dec 18, 2022
29208a3
Cache successful `verRctNonSemanticsSimple` calls
SChernykh Dec 11, 2022
1976c9a
Merge pull request #8641
luigi1111 Jan 11, 2023
cbc5cf4
Merge pull request #8644
luigi1111 Jan 11, 2023
153819f
Merge pull request #8649
luigi1111 Jan 11, 2023
b0ea7cb
Merge pull request #8654
luigi1111 Jan 11, 2023
1d20b81
Merge pull request #8678
luigi1111 Jan 11, 2023
f73a2b1
Merge pull request #8683
luigi1111 Jan 11, 2023
c48f572
Merge pull request #8676
luigi1111 Jan 11, 2023
480b050
RandomX: print VM allocation warnings only once
SChernykh Jan 11, 2023
f456b3f
Demote large pages warning to `mdebug`
SChernykh Jan 14, 2023
15384cc
depends: bump hidapi/libusb
tobtoht Jan 18, 2023
ce4ef6d
p2p: remove offline seed nodes
selsta Nov 28, 2022
988056d
p2p: add plowsof seed nodes
selsta Jan 25, 2023
573a369
blockchain-stats: print any remaining data at end of loop
hyc Jan 17, 2023
057a77a
Merge pull request #8706
luigi1111 Feb 6, 2023
f38b073
Merge pull request #8714
luigi1111 Feb 6, 2023
0f15707
Merge pull request #8723
luigi1111 Feb 6, 2023
d8e39bd
depends: bump openssl to 1.1.1t
tobtoht Feb 7, 2023
dc18efa
build: prepare v0.18.2.0
selsta Feb 8, 2023
68a73a2
Merge pull request #8721
luigi1111 Feb 15, 2023
75bec63
Merge pull request #8738
luigi1111 Feb 15, 2023
99be9a0
Merge pull request #8739
luigi1111 Feb 15, 2023
77d883e
workflows: update dependencies to fix warnings
selsta Feb 19, 2023
ad80f1b
Handle case where a command line flag is not allowed in the config file
almalh Mar 6, 2023
65e13db
wallet2: fix rescanning tx via scan_tx
j-berman Sep 10, 2022
14de562
device: Add ledger Stax device id to device detection
fbeutin-ledger Mar 17, 2023
c59e009
verRctNonSemanticsSimpleCached: fix fragility
jeffro256 Jan 14, 2023
5900ed3
Add a size limit for tx_extra in tx pool
tevador Feb 5, 2023
cdeb286
build: prepare v0.18.2.1
selsta Mar 18, 2023
b4519c6
Merge pull request #8746
luigi1111 Mar 18, 2023
d7821a0
Merge pull request #8779
luigi1111 Mar 18, 2023
66f5729
Merge pull request #8781
luigi1111 Mar 18, 2023
225e5ba
Merge pull request #8784
luigi1111 Mar 18, 2023
f0e326b
p2p: avoid spam blocking ipv4 addresses in a blocked subnet
moneromooo-monero Mar 1, 2023
c4cfaa4
p2p: do not log to global when re-blocking a subnet
moneromooo-monero Mar 9, 2023
0e2c2dd
Merge pull request #8787
luigi1111 Mar 25, 2023
25645e5
Merge pull request #8785
luigi1111 Mar 25, 2023
1328048
wallet2: fix infinite loop in fake out selection
Mar 21, 2023
4f47fd2
Merge pull request #8801
luigi1111 Mar 27, 2023
4f1262b
build: prepare v0.18.2.2
selsta Mar 27, 2023
c742fa4
Fixed deadlock and crash when syncing with full dataset on Windows
SChernykh Mar 29, 2023
059b975
cryptonote core/protocol: don't drop peers for soft offenses
jeffro256 Mar 27, 2023
2f62dd5
Merge pull request #8811
luigi1111 Apr 3, 2023
a371e60
Merge pull request #8813
luigi1111 Apr 3, 2023
e06129b
Merge pull request #8805
luigi1111 Apr 3, 2023
2f45d5c
Merge pull request #8766
luigi1111 Apr 25, 2023
1d1d5fb
Fixed RandomX initialization when mining from scratch
SChernykh Apr 27, 2023
f983ac7
fix missing <cstdint> includes
tobtoht May 6, 2023
1fad8cc
blockchain: ensure base fee cannot reach 0
May 11, 2023
1ce32d8
Merge pull request #8846
luigi1111 May 12, 2023
8dc4abd
common: do not use DNS to determine if address is local
tobtoht May 12, 2023
a4a58eb
depends: update openssl to 1.1.1u
tobtoht May 30, 2023
aa139f0
wallet_rpc_server: dedup transfer RPC responses [RELEASE]
jeffro256 Jun 2, 2023
cfc6227
cryptonote_basic: fix amount overflow detection on 32-bit systems [RE…
jeffro256 May 8, 2023
26025cb
Speed up perf_timer init on x86
SChernykh Jun 8, 2023
438554e
properly terminate interrupted TCP connection. fixes #8685
j-berman Jun 9, 2023
dc24312
wallet: respect frozen key images in multisig wallets [RELEASE]
jeffro256 Jun 12, 2023
c6530d2
Add CLSAG serialization to ZMQ code
vtnerd Jun 10, 2023
aed36a2
Set SSL SNI even when server verification is disabled
vtnerd Jun 9, 2023
1924c17
protocol: drop peers sending duplicate txes
moneromooo-monero May 16, 2023
62bb95b
wallet2: fix missing exceptions from failing wallet refresh
May 30, 2023
835896e
wallet2: do not lose exception in current thread on refresh
May 30, 2023
60e9426
Merge pull request #8566
luigi1111 Jun 27, 2023
5c900bb
Merge pull request #8831
luigi1111 Jun 27, 2023
54f0f9e
Merge pull request #8845
luigi1111 Jun 27, 2023
11b5139
Merge pull request #8851
luigi1111 Jun 27, 2023
9f8ae96
Merge pull request #8878
luigi1111 Jun 27, 2023
17ea766
Merge pull request #8883
luigi1111 Jun 27, 2023
842478c
core_rpc_server: return ID of submitted block
jeffro256 Jun 3, 2023
a41453c
Merge pull request #8892
luigi1111 Jul 7, 2023
f173bf6
Merge pull request #8895
luigi1111 Jul 7, 2023
bd96288
Merge pull request #8900
luigi1111 Jul 7, 2023
5a99b2d
Merge pull request #8905
luigi1111 Jul 7, 2023
3be6c13
Merge pull request #8908
luigi1111 Jul 7, 2023
1eb1162
Merge pull request #8909
luigi1111 Jul 7, 2023
4dc727b
Merge pull request #8916
luigi1111 Jul 7, 2023
ab82600
Merge pull request #8917
luigi1111 Jul 7, 2023
23f782b
wallet2, RPC: Optimize RPC calls for periodic refresh from 3 down to …
rbrunner7 Nov 21, 2021
f137a35
Enforce restricted # pool txs served via RPC + optimize chunked reqs …
j-berman Dec 14, 2022
ed05ac6
wallet2: when checking frozen multisig tx set, don't assume order
jeffro256 Jul 16, 2023
b51f4a9
scan_tx: fix custom comparator for == case; fixes #8951
j-berman Jul 18, 2023
78348bc
wallet-rpc: restore from multisig seed
jeffro256 Jun 22, 2023
6c7640e
Merge pull request #8800
luigi1111 Aug 17, 2023
894adef
Merge pull request #8891
luigi1111 Aug 17, 2023
9d5c5b5
Merge pull request #8942
luigi1111 Aug 17, 2023
3bebcc4
Merge pull request #8953
luigi1111 Aug 17, 2023
eac1b86
Merge pull request #8957
luigi1111 Aug 17, 2023
633e1b7
wallet_rpc_server: add --no-initial-sync flag for quicker network bin…
moneromooo-monero May 25, 2022
356e687
wallet_rpc_server: chunk refresh to keep responding to RPC while refr…
moneromooo-monero May 25, 2022
7dbb14b
functional_tests: fix multisig tests noutputs assertion
jeffro256 Aug 20, 2023
ba98269
wallet2: fix `store_to()` and `change_password()`
jeffro256 Jul 7, 2023
64ed938
build: prepare v0.18.3.0
selsta Sep 10, 2023
61e664a
Merge pull request #8938
luigi1111 Sep 15, 2023
031d318
Merge pull request #8941
luigi1111 Sep 15, 2023
6e7bd68
Merge pull request #8977
luigi1111 Sep 15, 2023
533bbc3
Merge pull request #8988
luigi1111 Sep 15, 2023
0c04018
depends: openssl: update to 3.0.11
tobtoht Sep 19, 2023
205c804
wallet: store watch-only wallet correctly when `change_password()` is…
jeffro256 Sep 22, 2023
3f9140e
storages: change error log category to serialization
selsta Sep 22, 2023
41157db
Merge pull request #8999
luigi1111 Sep 30, 2023
f9b81a5
Merge pull request #9001
luigi1111 Sep 30, 2023
03d51b7
wallet2: fix refresh function parameters
selsta Oct 1, 2023
fbcd8da
build: prepare v0.18.3.1
selsta Oct 2, 2023
810f6a6
Fix: long term block weight cache
Boog900 Oct 1, 2023
69de381
add a test for the long term weight cache
Boog900 Oct 2, 2023
83d0d23
Merge pull request #9011
luigi1111 Oct 2, 2023
1c12d30
Merge pull request #9012
luigi1111 Oct 2, 2023
2656cdf
Merge pull request #9014
luigi1111 Oct 2, 2023
e0b2123
http_client: reduce number of packets sent for small bodies
jeffro256 Mar 19, 2023
bdebf68
wallet2: ensure transfers and sweeps use same fee calc logic
j-berman May 27, 2023
09a88cc
Update RandomX to 1.2.1
tevador Oct 20, 2023
5b0c274
gitian: add riscv64 support
selsta Oct 21, 2023
14ae812
cryptonote_config: include cstdint
jeffro256 Oct 22, 2023
eae62a0
ringct: make `rctSigBase` serialization follow strict aliasing rule
jeffro256 Oct 23, 2023
eb4df0a
Merge pull request #8992
luigi1111 Oct 26, 2023
0f75585
multisig: better errors for small malformed kex msgs
jeffro256 Aug 8, 2023
2e9542d
Merge pull request #9020
luigi1111 Oct 26, 2023
72d2a61
Merge pull request #9022
luigi1111 Oct 26, 2023
d9b765a
Merge pull request #9027
luigi1111 Oct 26, 2023
5435202
readline_buffer: disable bracketed paste escape sequences
jeffro256 Jan 2, 2023
6c38c21
heed NO_COLOR environment variable
moneromooo-monero Jan 1, 2023
fe47806
wallet: fix multisig key memory leak
jeffro256 Nov 2, 2023
fe746dc
Fix EAGAIN bug in ZMQ-RPC/ZMQ-PUB
vtnerd Nov 4, 2023
e7d51e5
JH hash compiler workarounds
SChernykh Oct 27, 2023
95e4fc3
Merge pull request #9029
luigi1111 Nov 6, 2023
2fe5a5e
Merge pull request #9034
luigi1111 Nov 6, 2023
d5c667a
Merge pull request #9036
luigi1111 Nov 6, 2023
c193c5e
Merge pull request #9039
luigi1111 Nov 6, 2023
646c3fb
Merge pull request #9043
luigi1111 Nov 6, 2023
79107ff
Merge pull request #9046
luigi1111 Nov 6, 2023
9a5f843
Merge pull request #9047
luigi1111 Nov 6, 2023
c090620
Merge pull request #9051
luigi1111 Nov 6, 2023
47d8899
Fix missing checks for IsObject in ZMQ jsonrpc reading
vtnerd Nov 28, 2023
9a70f43
Merge pull request #9053
luigi1111 Jan 18, 2024
8eab181
Merge pull request #9080
luigi1111 Jan 18, 2024
f5b8634
Add <cstdint> to aligned test
vtnerd Jan 30, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
38 changes: 20 additions & 18 deletions .github/workflows/build.yml
Expand Up @@ -27,16 +27,16 @@ jobs:
env:
CCACHE_TEMPDIR: /tmp/.ccache-temp
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v2
- uses: actions/cache@v3
with:
path: /Users/runner/Library/Caches/ccache
key: ccache-${{ runner.os }}-build-${{ github.sha }}
restore-keys: ccache-${{ runner.os }}-build-
- name: install dependencies
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq libpgm miniupnpc ldns expat libunwind-headers protobuf ccache
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq libpgm miniupnpc expat libunwind-headers protobuf ccache
- name: build
run: |
${{env.CCACHE_SETTINGS}}
Expand All @@ -51,15 +51,15 @@ jobs:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v2
- uses: actions/cache@v3
with:
path: C:\Users\runneradmin\.ccache
key: ccache-${{ runner.os }}-build-${{ github.sha }}
restore-keys: ccache-${{ runner.os }}-build-
- uses: eine/setup-msys2@v2
- uses: msys2/setup-msys2@v2
with:
update: true
install: mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-ccache mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi mingw-w64-x86_64-protobuf-c mingw-w64-x86_64-libusb mingw-w64-x86_64-unbound git
Expand All @@ -77,12 +77,12 @@ jobs:
CCACHE_TEMPDIR: /tmp/.ccache-temp
strategy:
matrix:
os: [ubuntu-latest, ubuntu-18.04]
os: [ubuntu-22.04, ubuntu-20.04]
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v2
- uses: actions/cache@v3
with:
path: ~/.ccache
key: ccache-${{ runner.os }}-build-${{ matrix.os }}-${{ github.sha }}
Expand All @@ -101,14 +101,14 @@ jobs:
${{env.BUILD_DEFAULT_LINUX}}

libwallet-ubuntu:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
env:
CCACHE_TEMPDIR: /tmp/.ccache-temp
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v2
- uses: actions/cache@v3
with:
path: ~/.ccache
key: ccache-${{ runner.os }}-libwallet-${{ github.sha }}
Expand All @@ -129,15 +129,15 @@ jobs:

test-ubuntu:
needs: build-ubuntu
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
env:
CCACHE_TEMPDIR: /tmp/.ccache-temp
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
with:
submodules: recursive
- name: ccache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/.ccache
key: ccache-${{ runner.os }}-build-ubuntu-latest-${{ github.sha }}
Expand All @@ -151,10 +151,11 @@ jobs:
- name: install monero dependencies
run: ${{env.APT_INSTALL_LINUX}}
- name: install Python dependencies
run: pip install requests psutil monotonic
run: pip install requests psutil monotonic zmq deepdiff
- name: tests
env:
CTEST_OUTPUT_ON_FAILURE: ON
DNS_PUBLIC: tcp://9.9.9.9
run: |
${{env.CCACHE_SETTINGS}}
${{env.BUILD_DEFAULT_LINUX}}
Expand All @@ -166,8 +167,9 @@ jobs:
source-archive:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: recursive
- name: archive
run: |
Expand All @@ -176,7 +178,7 @@ jobs:
export OUTPUT="$VERSION.tar"
echo "OUTPUT=$OUTPUT" >> $GITHUB_ENV
/home/runner/.local/bin/git-archive-all --prefix "$VERSION/" --force-submodules "$OUTPUT"
- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v3
with:
name: ${{ env.OUTPUT }}
path: /home/runner/work/monero/monero/${{ env.OUTPUT }}
17 changes: 9 additions & 8 deletions .github/workflows/depends.yml
Expand Up @@ -18,7 +18,7 @@ env:

jobs:
build-cross:
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
env:
CCACHE_TEMPDIR: /tmp/.ccache-temp
strategy:
Expand All @@ -36,13 +36,13 @@ jobs:
packages: "python3 gperf g++-aarch64-linux-gnu"
- name: "i686 Win"
host: "i686-w64-mingw32"
packages: "python3 g++-mingw-w64-i686 qttools5-dev-tools"
packages: "python3 g++-mingw-w64-i686"
- name: "i686 Linux"
host: "i686-pc-linux-gnu"
packages: "gperf cmake g++-multilib python3-zmq"
- name: "Win64"
host: "x86_64-w64-mingw32"
packages: "cmake python3 g++-mingw-w64-x86-64 qttools5-dev-tools"
packages: "cmake python3 g++-mingw-w64-x86-64"
- name: "x86_64 Linux"
host: "x86_64-unknown-linux-gnu"
packages: "gperf cmake python3-zmq libdbus-1-dev libharfbuzz-dev"
Expand All @@ -57,19 +57,20 @@ jobs:
packages: "clang-8 gperf cmake python3-zmq libdbus-1-dev libharfbuzz-dev"
name: ${{ matrix.toolchain.name }}
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: recursive
# Most volatile cache
- name: ccache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/.ccache
key: ccache-${{ matrix.toolchain.host }}-${{ github.sha }}
restore-keys: ccache-${{ matrix.toolchain.host }}-
# Less volatile cache
- name: depends cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: contrib/depends/built
key: depends-${{ matrix.toolchain.host }}-${{ hashFiles('contrib/depends/packages/*') }}
Expand All @@ -78,7 +79,7 @@ jobs:
depends-${{ matrix.toolchain.host }}-
# Static cache
- name: OSX SDK cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: contrib/depends/sdk-sources
key: sdk-${{ matrix.toolchain.host }}-${{ matrix.toolchain.osx_sdk }}
Expand All @@ -96,7 +97,7 @@ jobs:
run: |
${{env.CCACHE_SETTINGS}}
make depends target=${{ matrix.toolchain.host }} -j2
- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v3
if: ${{ matrix.toolchain.host == 'x86_64-w64-mingw32' || matrix.toolchain.host == 'x86_64-apple-darwin11' || matrix.toolchain.host == 'x86_64-unknown-linux-gnu' }}
with:
name: ${{ matrix.toolchain.name }}
Expand Down
49 changes: 49 additions & 0 deletions .github/workflows/gitian.yml
@@ -0,0 +1,49 @@
name: ci/gh-actions/gitian

on:
push:
tags:
- '*'

jobs:
build-gitian:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
operating-system:
- name: "Linux"
option: "l"
- name: "Windows"
option: "w"
- name: "Android"
option: "a"
- name: "FreeBSD"
option: "f"
- name: "macOS"
option: "m"
name: ${{ matrix.operating-system.name }}
steps:
- name: prepare
run: |
sudo apt update
curl -O https://raw.githubusercontent.com/monero-project/monero/${{ github.ref_name }}/contrib/gitian/gitian-build.py
chmod +x gitian-build.py
- name: setup
run: |
./gitian-build.py --setup --docker github-actions ${{ github.ref_name }}
- name: build
run: |
./gitian-build.py --docker --detach-sign --no-commit --build -j 3 -o ${{ matrix.operating-system.option }} github-actions ${{ github.ref_name }}
- name: post build
run: |
cd out/${{ github.ref_name }}
shasum -a256 *
echo \`\`\` >> $GITHUB_STEP_SUMMARY
shasum -a256 * >> $GITHUB_STEP_SUMMARY
echo \`\`\` >> $GITHUB_STEP_SUMMARY
- uses: actions/upload-artifact@v3
with:
name: ${{ matrix.operating-system.name }}
path: |
out/${{ github.ref_name }}/*
14 changes: 13 additions & 1 deletion CMakeLists.txt
Expand Up @@ -794,7 +794,7 @@ else()
set(USE_LTO_DEFAULT false)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--stack,10485760")
if(NOT BUILD_64)
add_definitions(-DWINVER=0x0501 -D_WIN32_WINNT=0x0501)
add_definitions(-DWINVER=0x0600 -D_WIN32_WINNT=0x0600)
endif()
endif()
set(C_WARNINGS "-Waggregate-return -Wnested-externs -Wold-style-definition -Wstrict-prototypes")
Expand Down Expand Up @@ -1178,6 +1178,9 @@ find_library(NORM_LIBRARY norm)
find_library(GSSAPI_LIBRARY gssapi_krb5)
find_library(PROTOLIB_LIBRARY protolib)
find_library(SODIUM_LIBRARY sodium)
find_library(BSD_LIBRARY bsd)
find_library(MD_LIBRARY md)
find_library(PROTOKIT_LIBRARY protokit)

if(NOT ZMQ_INCLUDE_PATH)
message(FATAL_ERROR "Could not find required header zmq.h")
Expand All @@ -1200,6 +1203,15 @@ endif()
if(SODIUM_LIBRARY)
set(ZMQ_LIB "${ZMQ_LIB};${SODIUM_LIBRARY}")
endif()
if(BSD_LIBRARY)
set(ZMQ_LIB "${ZMQ_LIB};${BSD_LIBRARY}")
endif()
if(MD_LIBRARY)
set(ZMQ_LIB "${ZMQ_LIB};${MD_LIBRARY}")
endif()
if(PROTOKIT_LIBRARY)
set(ZMQ_LIB "${ZMQ_LIB};${PROTOKIT_LIBRARY}")
endif()

include(external/supercop/functions.cmake) # place after setting flags and before src directory inclusion
add_subdirectory(contrib)
Expand Down
19 changes: 9 additions & 10 deletions README.md
Expand Up @@ -138,8 +138,8 @@ Dates are provided in the format YYYY-MM-DD.
| 1978433 | 2019-11-30 | v12 | v0.15.0.0 | v0.16.0.0 | New PoW based on RandomX, only allow >= 2 outputs, change to the block median used to calculate penalty, v1 coinbases are forbidden, rct sigs in coinbase forbidden, 10 block lock time for incoming outputs
| 2210000 | 2020-10-17 | v13 | v0.17.0.0 | v0.17.3.2 | New CLSAG transaction format
| 2210720 | 2020-10-18 | v14 | v0.17.1.1 | v0.17.3.2 | forbid old MLSAG transaction format
| 2688888 | 2022-08-13 | v15 | v0.18.0.0 | v0.18.0.0 | ringsize = 16, bulletproofs+, view tags, adjusted dynamic block weight algorithm
| 2689608 | 2022-08-14 | v16 | v0.18.0.0 | v0.18.0.0 | forbid old v14 transaction format
| 2688888 | 2022-08-13 | v15 | v0.18.0.0 | v0.18.3.1 | ringsize = 16, bulletproofs+, view tags, adjusted dynamic block weight algorithm
| 2689608 | 2022-08-14 | v16 | v0.18.0.0 | v0.18.3.1 | forbid old v14 transaction format
| XXXXXXX | XXX-XX-XX | XXX | vX.XX.X.X | vX.XX.X.X | XXX |

X's indicate that these details have not been determined as of commit date.
Expand Down Expand Up @@ -178,7 +178,6 @@ library archives (`.a`).
| libunwind | any | NO | `libunwind8-dev` | `libunwind` | `libunwind-devel` | `libunwind-devel` | YES | Stack traces |
| liblzma | any | NO | `liblzma-dev` | `xz` | `liblzma-devel` | `xz-devel` | YES | For libunwind |
| libreadline | 6.3.0 | NO | `libreadline6-dev` | `readline` | `readline-devel` | `readline-devel` | YES | Input editing |
| ldns | 1.6.17 | NO | `libldns-dev` | `ldns` | `libldns-devel` | `ldns-devel` | YES | SSL toolkit |
| expat | 1.1 | NO | `libexpat1-dev` | `expat` | `expat-devel` | `expat-devel` | YES | XML parsing |
| GTest | 1.5 | YES | `libgtest-dev`[1] | `gtest` | `gtest-devel` | `gtest-devel` | YES | Test suite |
| ccache | any | NO | `ccache` | `ccache` | `ccache` | `ccache` | YES | Compil. cache |
Expand All @@ -205,23 +204,23 @@ then:
Install all dependencies at once on Debian/Ubuntu:

```
sudo apt update && sudo apt install build-essential cmake pkg-config libssl-dev libzmq3-dev libunbound-dev libsodium-dev libunwind8-dev liblzma-dev libreadline6-dev libldns-dev libexpat1-dev libpgm-dev qttools5-dev-tools libhidapi-dev libusb-1.0-0-dev libprotobuf-dev protobuf-compiler libudev-dev libboost-chrono-dev libboost-date-time-dev libboost-filesystem-dev libboost-locale-dev libboost-program-options-dev libboost-regex-dev libboost-serialization-dev libboost-system-dev libboost-thread-dev python3 ccache doxygen graphviz
sudo apt update && sudo apt install build-essential cmake pkg-config libssl-dev libzmq3-dev libunbound-dev libsodium-dev libunwind8-dev liblzma-dev libreadline6-dev libexpat1-dev libpgm-dev qttools5-dev-tools libhidapi-dev libusb-1.0-0-dev libprotobuf-dev protobuf-compiler libudev-dev libboost-chrono-dev libboost-date-time-dev libboost-filesystem-dev libboost-locale-dev libboost-program-options-dev libboost-regex-dev libboost-serialization-dev libboost-system-dev libboost-thread-dev python3 ccache doxygen graphviz
```

Install all dependencies at once on Arch:
```
sudo pacman -Syu --needed base-devel cmake boost openssl zeromq libpgm unbound libsodium libunwind xz readline ldns expat gtest python3 ccache doxygen graphviz qt5-tools hidapi libusb protobuf systemd
sudo pacman -Syu --needed base-devel cmake boost openssl zeromq libpgm unbound libsodium libunwind xz readline expat gtest python3 ccache doxygen graphviz qt5-tools hidapi libusb protobuf systemd
```

Install all dependencies at once on Fedora:
```
sudo dnf install gcc gcc-c++ cmake pkgconf boost-devel openssl-devel zeromq-devel openpgm-devel unbound-devel libsodium-devel libunwind-devel xz-devel readline-devel ldns-devel expat-devel gtest-devel ccache doxygen graphviz qt5-linguist hidapi-devel libusbx-devel protobuf-devel protobuf-compiler systemd-devel
sudo dnf install gcc gcc-c++ cmake pkgconf boost-devel openssl-devel zeromq-devel openpgm-devel unbound-devel libsodium-devel libunwind-devel xz-devel readline-devel expat-devel gtest-devel ccache doxygen graphviz qt5-linguist hidapi-devel libusbx-devel protobuf-devel protobuf-compiler systemd-devel
```

Install all dependencies at once on openSUSE:

```
sudo zypper ref && sudo zypper in cppzmq-devel ldns-devel libboost_chrono-devel libboost_date_time-devel libboost_filesystem-devel libboost_locale-devel libboost_program_options-devel libboost_regex-devel libboost_serialization-devel libboost_system-devel libboost_thread-devel libexpat-devel libminiupnpc-devel libsodium-devel libunwind-devel unbound-devel cmake doxygen ccache fdupes gcc-c++ libevent-devel libopenssl-devel pkgconf-pkg-config readline-devel xz-devel libqt5-qttools-devel patterns-devel-C-C++-devel_C_C++
sudo zypper ref && sudo zypper in cppzmq-devel libboost_chrono-devel libboost_date_time-devel libboost_filesystem-devel libboost_locale-devel libboost_program_options-devel libboost_regex-devel libboost_serialization-devel libboost_system-devel libboost_thread-devel libexpat-devel libminiupnpc-devel libsodium-devel libunwind-devel unbound-devel cmake doxygen ccache fdupes gcc-c++ libevent-devel libopenssl-devel pkgconf-pkg-config readline-devel xz-devel libqt5-qttools-devel patterns-devel-C-C++-devel_C_C++
```

Install all dependencies at once on macOS with the provided Brewfile:
Expand Down Expand Up @@ -345,7 +344,7 @@ Tested on a Raspberry Pi Zero with a clean install of minimal Raspbian Stretch (
```bash
git clone https://github.com/monero-project/monero.git
cd monero
git checkout v0.18.0.0
git checkout v0.18.3.1
```

* Build:
Expand Down Expand Up @@ -464,10 +463,10 @@ application.
cd monero
```

* If you would like a specific [version/tag](https://github.com/monero-project/monero/tags), do a git checkout for that version. eg. 'v0.18.0.0'. If you don't care about the version and just want binaries from master, skip this step:
* If you would like a specific [version/tag](https://github.com/monero-project/monero/tags), do a git checkout for that version. eg. 'v0.18.3.1'. If you don't care about the version and just want binaries from master, skip this step:

```bash
git checkout v0.18.0.0
git checkout v0.18.3.1
```

* If you are on a 64-bit system, run:
Expand Down
2 changes: 1 addition & 1 deletion cmake/FindLibUSB.cmake
Expand Up @@ -113,7 +113,7 @@ if ( LibUSB_FOUND )
if (APPLE OR LibUSB_VERSION_1.0.16 OR STATIC)
if (APPLE)
if(DEPENDS)
list(APPEND TEST_COMPILE_EXTRA_LIBRARIES "-framework Foundation -framework IOKit")
list(APPEND TEST_COMPILE_EXTRA_LIBRARIES "-framework Foundation -framework IOKit -framework Security")
else()
find_library(COREFOUNDATION CoreFoundation)
find_library(IOKIT IOKit)
Expand Down
1 change: 0 additions & 1 deletion contrib/brew/Brewfile
Expand Up @@ -25,7 +25,6 @@ brew "unbound"
brew "libsodium"
brew "miniupnpc"
brew "readline"
brew "ldns"
brew "expat"
brew "ccache"
brew "doxygen"
Expand Down
3 changes: 1 addition & 2 deletions contrib/depends/Makefile
Expand Up @@ -110,8 +110,7 @@ $(host_arch)_$(host_os)_id_string+=$(shell $(host_CXX) --version 2>/dev/null)
$(host_arch)_$(host_os)_id_string+=$(shell $(host_RANLIB) --version 2>/dev/null)
$(host_arch)_$(host_os)_id_string+=$(shell $(host_STRIP) --version 2>/dev/null)

qt_packages_$(NO_QT) = $(qt_packages)
packages += $($(host_arch)_$(host_os)_packages) $($(host_os)_packages) $(qt_packages_)
packages += $($(host_arch)_$(host_os)_packages) $($(host_os)_packages)
native_packages += $($(host_arch)_$(host_os)_native_packages) $($(host_os)_native_packages)

all_packages = $(packages) $(native_packages)
Expand Down