Skip to content

Commit bfbd912

Browse files
Merge pull request #5261 from ogabrielides/rc7_bump
chore: bump version to rc.7
2 parents c4cf446 + e0fe6e4 commit bfbd912

28 files changed

+4792
-476
lines changed

configure.ac

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ AC_PREREQ([2.69])
22
define(_CLIENT_VERSION_MAJOR, 19)
33
define(_CLIENT_VERSION_MINOR, 0)
44
define(_CLIENT_VERSION_BUILD, 0)
5-
define(_CLIENT_VERSION_RC, 6)
5+
define(_CLIENT_VERSION_RC, 7)
66
define(_CLIENT_VERSION_IS_RELEASE, false)
77
define(_COPYRIGHT_YEAR, 2023)
88
define(_COPYRIGHT_HOLDERS,[The %s developers])

src/chainparams.cpp

+66
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
#include <tinyformat.h>
1313
#include <util/ranges.h>
1414
#include <util/system.h>
15+
#include <util/underlying.h>
1516
#include <versionbitsinfo.h>
1617

1718
#include <arith_uint256.h>
@@ -1045,6 +1046,8 @@ class CRegTestParams : public CChainParams {
10451046

10461047
UpdateLLMQTestParametersFromArgs(args, Consensus::LLMQType::LLMQ_TEST);
10471048
UpdateLLMQTestParametersFromArgs(args, Consensus::LLMQType::LLMQ_TEST_INSTANTSEND);
1049+
UpdateLLMQInstantSendFromArgs(args);
1050+
UpdateLLMQInstantSendDIP0024FromArgs(args);
10481051
}
10491052

10501053
/**
@@ -1111,7 +1114,26 @@ class CRegTestParams : public CChainParams {
11111114
params->threshold = threshold;
11121115
params->dkgBadVotesThreshold = threshold;
11131116
}
1117+
1118+
/**
1119+
* Allows modifying the LLMQ type for InstantSend.
1120+
*/
1121+
void UpdateLLMQInstantSend(Consensus::LLMQType llmqType)
1122+
{
1123+
consensus.llmqTypeInstantSend = llmqType;
1124+
}
1125+
1126+
/**
1127+
* Allows modifying the LLMQ type for InstantSend (DIP0024).
1128+
*/
1129+
void UpdateLLMQDIP0024InstantSend(Consensus::LLMQType llmqType)
1130+
{
1131+
consensus.llmqTypeDIP0024InstantSend = llmqType;
1132+
}
1133+
11141134
void UpdateLLMQTestParametersFromArgs(const ArgsManager& args, const Consensus::LLMQType llmqType);
1135+
void UpdateLLMQInstantSendFromArgs(const ArgsManager& args);
1136+
void UpdateLLMQInstantSendDIP0024FromArgs(const ArgsManager& args);
11151137
};
11161138

11171139
void CRegTestParams::UpdateVersionBitsParametersFromArgs(const ArgsManager& args)
@@ -1253,6 +1275,50 @@ void CRegTestParams::UpdateLLMQTestParametersFromArgs(const ArgsManager& args, c
12531275
UpdateLLMQTestParameters(size, threshold, llmqType);
12541276
}
12551277

1278+
void CRegTestParams::UpdateLLMQInstantSendFromArgs(const ArgsManager& args)
1279+
{
1280+
if (!args.IsArgSet("-llmqinstantsend")) return;
1281+
1282+
const auto& llmq_params_opt = GetLLMQ(consensus.llmqTypeInstantSend);
1283+
assert(llmq_params_opt.has_value());
1284+
1285+
std::string strLLMQType = gArgs.GetArg("-llmqinstantsend", std::string(llmq_params_opt->name));
1286+
1287+
Consensus::LLMQType llmqType = Consensus::LLMQType::LLMQ_NONE;
1288+
for (const auto& params : consensus.llmqs) {
1289+
if (params.name == strLLMQType) {
1290+
llmqType = params.type;
1291+
}
1292+
}
1293+
if (llmqType == Consensus::LLMQType::LLMQ_NONE) {
1294+
throw std::runtime_error("Invalid LLMQ type specified for -llmqinstantsend.");
1295+
}
1296+
LogPrintf("Setting llmqinstantsend to size=%ld\n", ToUnderlying(llmqType));
1297+
UpdateLLMQInstantSend(llmqType);
1298+
}
1299+
1300+
void CRegTestParams::UpdateLLMQInstantSendDIP0024FromArgs(const ArgsManager& args)
1301+
{
1302+
if (!args.IsArgSet("-llmqinstantsenddip0024")) return;
1303+
1304+
const auto& llmq_params_opt = GetLLMQ(consensus.llmqTypeDIP0024InstantSend);
1305+
assert(llmq_params_opt.has_value());
1306+
1307+
std::string strLLMQType = gArgs.GetArg("-llmqinstantsenddip0024", std::string(llmq_params_opt->name));
1308+
1309+
Consensus::LLMQType llmqType = Consensus::LLMQType::LLMQ_NONE;
1310+
for (const auto& params : consensus.llmqs) {
1311+
if (params.name == strLLMQType) {
1312+
llmqType = params.type;
1313+
}
1314+
}
1315+
if (llmqType == Consensus::LLMQType::LLMQ_NONE) {
1316+
throw std::runtime_error("Invalid LLMQ type specified for -llmqinstantsenddip0024.");
1317+
}
1318+
LogPrintf("Setting llmqinstantsenddip0024 to size=%ld\n", ToUnderlying(llmqType));
1319+
UpdateLLMQDIP0024InstantSend(llmqType);
1320+
}
1321+
12561322
void CDevNetParams::UpdateDevnetSubsidyAndDiffParametersFromArgs(const ArgsManager& args)
12571323
{
12581324
if (!args.IsArgSet("-minimumdifficultyblocks") && !args.IsArgSet("-highsubsidyblocks") && !args.IsArgSet("-highsubsidyfactor")) return;

src/dashbls/.github/workflows/build-binds.yml

+3-6
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,13 @@ jobs:
2424
matrix:
2525
os: [macos-latest, ubuntu-latest]
2626
golang: [ '1.17' ]
27-
python: ['3.7', '3.8', '3.9', '3.10']
27+
python: ['3.7', '3.8', '3.9', '3.10', '3.11']
2828

2929
steps:
3030
- name: Checkout code
3131
uses: actions/checkout@v3
3232

33-
- uses: actions/setup-python@v2
34-
name: Install Python
33+
- uses: chia-network/actions/setup-python@main
3534
with:
3635
python-version: ${{ matrix.python }}
3736

@@ -60,9 +59,7 @@ jobs:
6059
if: startsWith(matrix.os, 'ubuntu')
6160
run: |
6261
sudo apt-get update
63-
sudo apt-get install -qq --yes snap libgmp-dev
64-
sudo apt-get remove --purge cmake -y
65-
sudo snap install cmake --classic
62+
sudo apt-get install -qq --yes valgrind libgmp-dev cmake
6663
hash -r
6764
cmake --version
6865

src/dashbls/.github/workflows/build-test.yaml

+2-4
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,7 @@ jobs:
3838
if: startsWith(matrix.os, 'ubuntu')
3939
run: |
4040
sudo apt-get update
41-
sudo apt-get install -qq --yes valgrind snap libgmp-dev libsodium-dev
42-
sudo apt-get remove --purge cmake -y
43-
sudo snap install cmake --classic
41+
sudo apt-get install -qq --yes valgrind libgmp-dev cmake
4442
hash -r
4543
cmake --version
4644
@@ -49,7 +47,7 @@ jobs:
4947
run: |
5048
ls -l
5149
export MACOSX_DEPLOYMENT_TARGET=10.14
52-
brew install autoconf automake gmp
50+
brew install autoconf automake gmp pkg-config
5351
5452
- name: Build library using CMake
5553
if: startsWith(matrix.builder, 'cmake')

src/dashbls/.github/workflows/build-wheels.yml

+26-7
Original file line numberDiff line numberDiff line change
@@ -43,16 +43,34 @@ jobs:
4343
python:
4444
- major-dot-minor: '3.7'
4545
cibw-build: 'cp37-*'
46+
manylinux:
47+
arch: manylinux2014
48+
intel: manylinux2010
4649
matrix: '3.7'
4750
- major-dot-minor: '3.8'
4851
cibw-build: 'cp38-*'
52+
manylinux:
53+
arch: manylinux2014
54+
intel: manylinux2010
4955
matrix: '3.8'
5056
- major-dot-minor: '3.9'
5157
cibw-build: 'cp39-*'
58+
manylinux:
59+
arch: manylinux2014
60+
intel: manylinux2010
5261
matrix: '3.9'
5362
- major-dot-minor: '3.10'
5463
cibw-build: 'cp310-*'
64+
manylinux:
65+
arch: manylinux2014
66+
intel: manylinux2010
5567
matrix: '3.10'
68+
- major-dot-minor: '3.11'
69+
cibw-build: 'cp311-*'
70+
manylinux:
71+
arch: manylinux2014
72+
intel: manylinux2014
73+
matrix: '3.11'
5674
arch:
5775
- name: ARM
5876
matrix: arm
@@ -114,25 +132,24 @@ jobs:
114132
- name: Install pipx
115133
run: |
116134
pip install pipx
135+
117136
- name: Build and test
118-
uses: pypa/[email protected]
119-
with:
120-
output-dir: dist
121137
env:
138+
CIBW_PRERELEASE_PYTHONS: True
122139
CIBW_BUILD_VERBOSITY_MACOS: 0
123140
CIBW_BUILD_VERBOSITY_LINUX: 0
124141
CIBW_BUILD_VERBOSITY_WINDOWS: 0
125142
CIBW_BUILD: ${{ matrix.python.cibw-build }}
126143
CIBW_SKIP: '*-manylinux_i686 *-win32 *-musllinux_*'
127-
CIBW_MANYLINUX_AARCH64_IMAGE: manylinux2014
128-
CIBW_MANYLINUX_X86_64_IMAGE: manylinux2010
129-
CIBW_ENVIRONMENT_LINUX: "PATH=/project/cmake-3.17.3-Linux-`uname -m`/bin:$PATH"
144+
CIBW_MANYLINUX_AARCH64_IMAGE: ${{ matrix.python.manylinux['arm'] }}
145+
CIBW_MANYLINUX_X86_64_IMAGE: ${{ matrix.python.manylinux['intel'] }}
146+
CIBW_ENVIRONMENT_LINUX: "PATH=/project/cmake-3.14.3-Linux-`uname -m`/bin:$PATH"
130147
CIBW_BEFORE_ALL_LINUX: >
131148
yum -y install epel-release
132149
&& echo "epel-release installed"
133150
&& yum -y install lzip
134151
&& echo "lzip installed"
135-
&& curl -L https://github.com/Kitware/CMake/releases/download/v3.17.3/cmake-3.17.3-Linux-`uname -m`.sh > cmake.sh
152+
&& curl -L https://github.com/Kitware/CMake/releases/download/v3.14.3/cmake-3.14.3-Linux-`uname -m`.sh > cmake.sh
136153
&& yes | sh cmake.sh | cat
137154
&& rm -f /usr/bin/cmake
138155
&& curl -L https://gmplib.org/download/gmp/gmp-6.2.1.tar.lz | tar x --lzip
@@ -176,6 +193,8 @@ jobs:
176193
&& cp {wheel} {dest_dir}
177194
CIBW_TEST_REQUIRES: pytest
178195
CIBW_TEST_COMMAND: py.test -v {project}/python-bindings/test.py
196+
run:
197+
pipx run --spec='cibuildwheel==2.9.0' cibuildwheel --output-dir dist 2>&1
179198

180199
- name: Upload artifacts
181200
uses: actions/upload-artifact@v3

src/dashbls/depends/catch2/CMakeLists.txt

+5-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ project(
88
LANGUAGES CXX
99
)
1010

11-
1211
set(
1312
${PROJECT_NAME}_HEADERS
1413
catch2/catch.hpp
@@ -22,6 +21,11 @@ list(
2221
add_library(
2322
${PROJECT_NAME}
2423
INTERFACE
24+
)
25+
26+
target_sources(
27+
${PROJECT_NAME}
28+
INTERFACE
2529
"${${PROJECT_NAME}_HEADERS}"
2630
)
2731

src/dashbls/include/dashbls/bls.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ class BLS {
4141

4242
static void SetSecureAllocator(Util::SecureAllocCallback allocCb, Util::SecureFreeCallback freeCb);
4343

44-
static void CheckRelicErrors();
44+
static void CheckRelicErrors(bool should_throw = true);
4545
};
4646
} // end namespace bls
4747

src/dashbls/js-bindings/CMakeLists.txt

+7-5
Original file line numberDiff line numberDiff line change
@@ -13,24 +13,26 @@ include_directories(
1313
file(GLOB_RECURSE WRAP_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/wrappers/*.h)
1414
file(GLOB_RECURSE WRAP_SRC ${CMAKE_CURRENT_SOURCE_DIR}/wrappers/*.cpp)
1515

16-
add_executable(blsjs ${CMAKE_CURRENT_SOURCE_DIR}/jsbindings.cpp
16+
add_executable(blsjstmp ${CMAKE_CURRENT_SOURCE_DIR}/jsbindings.cpp
1717
${WRAP_HEADERS} ${WRAP_SRC} ${CMAKE_CURRENT_SOURCE_DIR}/helpers.h ${CMAKE_CURRENT_SOURCE_DIR}/helpers.cpp
1818
)
1919
add_custom_target(install_npm_dependencies npm ci)
20-
add_dependencies(blsjs install_npm_dependencies)
21-
target_link_libraries(blsjs PRIVATE dashbls)
20+
add_dependencies(blsjstmp install_npm_dependencies)
21+
target_link_libraries(blsjstmp PRIVATE dashbls)
2222

2323
# Copy necessary files for the npm package
2424
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/package.json package.json COPYONLY)
2525
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/package-lock.json package-lock.json COPYONLY)
2626
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blsjs.d.ts blsjs.d.ts COPYONLY)
2727
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/README.md README.md COPYONLY)
28+
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/bundle_wasm_for_web.js bundle_wasm_for_web.js COPYONLY)
2829

2930
# Copy test files
30-
file(GLOB JS_BINDINGS_TESTS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/tests/ ${CMAKE_CURRENT_SOURCE_DIR}/tests/*.js ${CMAKE_CURRENT_SOURCE_DIR}/tests/*.ts)
31+
file(GLOB JS_BINDINGS_TESTS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/tests/ ${CMAKE_CURRENT_SOURCE_DIR}/tests/*)
3132
foreach(file ${JS_BINDINGS_TESTS})
3233
message(FILE ${file})
3334
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tests/${file} tests/${file} COPYONLY)
3435
endforeach()
3536

36-
set_target_properties(blsjs PROPERTIES LINK_FLAGS "--bind -Oz --closure 1 -s MODULARIZE=1")
37+
set_target_properties(blsjstmp PROPERTIES LINK_FLAGS "--bind -Oz --closure 1 -s MODULARIZE=1 -s NODEJS_CATCH_EXIT=1 -s NODEJS_CATCH_REJECTION=1")
38+
add_custom_command(TARGET blsjstmp POST_BUILD COMMAND npm run build:web)

0 commit comments

Comments
 (0)