{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":50740659,"defaultBranch":"master","name":"PIVX","ownerLogin":"PIVX-Project","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2016-01-30T19:20:24.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/16931849?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1708463971.0","currentOid":""},"activityList":{"items":[{"before":"22a2fb84e78f5a5720bf3633ea854452ad7a6bcd","after":"27e639925782bfebc7c99ffc3905f819b1727ee1","ref":"refs/heads/master","pushedAt":"2024-04-25T08:37:13.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2926: [GA] Overhaul Github Actions Workflow\n\n3ba861c64ff35cc420f717b0286714d40457c2f0 [GA] Overhaul Github Actions Workflow (Fuzzbawls)\n\nPull request description:\n\n This is a major overhaul of our GitHub Actions workflow file that introduces several cleanups and optimizations, as well as new jobs dedicated to running just the python functional test suite. Below are some of the more notable changes:\n\n - Split off functional tests to their own jobs. Often times we will see a trivial failure in one of the functional tests. Prior to this change, this meant needing to re-run the entire build job again. With this change, we can trigger a re-run of just the functional test suite without needing to re-compile the wallet again. This is handled by creating a minimal archive \"artifact\" in the build job, and passing it to the new functional test jobs. Credit goes to @Duddino for coming up with this idea and doing much of the initial research and testing!\n - Split old configure/build/unittest groupings into their own steps. Instead of exclusively relying on older group macros in a single step, I've created new more descriptive steps to improve readability and responsiveness of the actions report portal. This also helps in seeing where any significant bottle-neck is for a particular job configuration.\n - Unify the `apt_get` and `brew_install` matrix config params. These two params have been unified to just `packages` across all matrix configurations.\n - No longer cache the sapling params. Since the sapling params files are part of our source tree anyways, caching them in GitHub Actions cache files is redundant and only serves to waste valuable cache storage space.\n - Add some basic descriptive commentary for jobs. Self-explanatory.\n\n Note: The minimalist build artifacts are ONLY intended to be used within the GitHub Actions environment and expire after 5 days from their creation. Failing functional tests that are not resolved within this expiry time will necessitate a full re-run of the workflow. Any use of these artifacts outside of GitHub Actions is discouraged and unsupported.\n\n ---\n Reviewer's note: GitHub will report this PR as not having all the \"required checks\" as passing as the names/IDs of jobs have been changed. Once this PR is merged it will be then possible to update the repository settings to reflect the new job names/IDs in the \"required checks\" settings.\n\nACKs for top commit: 3ba861c64ff35cc420f717b0286714d40457c2f0\n Duddino:\n ACK 3ba861c64ff35cc420f717b0286714d40457c2f0\n panleone:\n utACK 3ba861c64ff35cc420f717b0286714d40457c2f0\n\nTree-SHA512: f5d7ff65c5dd37dc24c64dfa47038126923c92146a1fd61410e902cb452e350b49d65a9c8a55c1281b412713825ffc8d794d275519c632e4e2b541b0339cc54a","shortMessageHtmlLink":"Merge #2926: [GA] Overhaul Github Actions Workflow"}},{"before":"4469fa046331b6b3b9404454bd912a18f39e8f9b","after":"22a2fb84e78f5a5720bf3633ea854452ad7a6bcd","ref":"refs/heads/master","pushedAt":"2024-04-25T06:43:50.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2925: [BUG] Fix more thread issues\n\nf5ba2649b014737ce2ec331b75f46cdeb9bde6a4 fix another possible deadlock (ale)\nf162f76229b7bd7e4c238df7feff28719ae23d11 fix: fix data race and remove circular dependency (ale)\n9207b8fdf55172ccc394c90b8e9b744106700c03 fix data race: LOCK cs before accessing nodeState (ale)\n58e5c8c425825dc3f8b0471480cdc5ea1065101c fix: Solve possible deadlock (ale)\n\nPull request description:\n\n This PR fixes more thread issues that ThreadSanitizer showed:\n\n first commit:\n Solve a possible 3-threads deadlock fixed by locking `mempool.cs` before `cs_inventory` (see the comment for the log)\n\n second commit:\n solve the trivial data race where `nodeState` is accessed without locking the corresponding mutex\n\n third commit:\n solve all the issues that the function `getQuorumNodes` had:\n\n - `it` iterator was accessed without having the lock on `cs_vPendingMasternodes` which was causing a possible data race\n - `connman->vNodes` was accessed without locking the mutex `cs_vNodes` (another possible data race)\n\n Solved by using the function `connman->ForEachNode` and removing the useless getter.\n\n fourth commit:\n Solve a possible deadlock: lock `cs_vPendingMasternodes` before calling `connmann->ForEachNode(...)`\n\nACKs for top commit: f5ba2649b014737ce2ec331b75f46cdeb9bde6a4\n Liquid369:\n tACK f5ba2649b014737ce2ec331b75f46cdeb9bde6a4\n Fuzzbawls:\n ACK f5ba2649b014737ce2ec331b75f46cdeb9bde6a4\n\nTree-SHA512: 2fa61ec6b3ad395cbe968874a90f1ec16eb5ddec85d48ddeb438fc92f4ae281d4ff7c5b297b147c4b3bf60d6a4849c0619567e3beccb930a76f61d0815bea1d5","shortMessageHtmlLink":"Merge #2925: [BUG] Fix more thread issues"}},{"before":"afb54472482bd8c567c63fc6be20c0d241b417d4","after":"4469fa046331b6b3b9404454bd912a18f39e8f9b","ref":"refs/heads/master","pushedAt":"2024-04-20T08:01:33.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2924: [Bug] Fix validation interface data race\n\nddbd4b01549999efa183373e349fc963d0f76aa2 fix BlockStateCatcher data races (ale)\nb01c3df1bdd083be2e7723e0361bffe396a9337b let validationinterface take shared_ptr (ale)\n\nPull request description:\n\n first commit:\n Partially backport bitcoin PR https://github.com/bitcoin/bitcoin/pull/18338 which introduce the functions\n `RegisterSharedValidationInterface` and `UnregisterSharedValidationInterface`. See that PR why using normal pointers is problematic, and how `shared_ptr` solve the issue\n (In a few words the problem is that it can happen that the pointed memory is freed before all signals have been processed, while with shared pointer we are sure that memory will be freed after the last signal is handled)\n\n second commit:\n Utilize the new functions to the validation interface `BlockStateCatcher`. In order to keep everywhere the logic unchanged (Registering on creation and Unregistering when the object goes out of scope) I created the wrapper class `BlockStateCatcherWrapper` which contains a `shared_ptr` to `BlockStatecatcher`.\n\n Those two commits solve the following data race where a `BlockStateCatcher` pointer is dereferenced after the pointed memory is freed\n\n ```\n WARNING: ThreadSanitizer: data race on vptr (ctor/dtor vs virtual call) (pid=6423)\n Write of size 8 at 0x7fc3d7c2d570 by thread T20:\n #0 CValidationInterface::~CValidationInterface() validationinterface.h:75 (pivxd+0xeacac)\n #1 BlockStateCatcher::~BlockStateCatcher() util/blockstatecatcher.h:23 (pivxd+0xeacac)\n #2 generateBlocks(Consensus::Params const&, CWallet*, bool, int, int, int, CScript*) rpc/mining.cpp:78 (pivxd+0x1c1a98)\n #3 generate(JSONRPCRequest const&) rpc/mining.cpp:140 (pivxd+0x1c2215)\n ...\n\n Previous read of size 8 at 0x7fc3d7c2d570 by thread T35 (mutexes: write M133270, write M132847):\n #0 void std::__invoke_impl(std::__invoke_memfun_deref, void (CValidationInterface::*&)(CConnman*), CValidationInterface*&, CConnman*&&) /usr/include/c++/12/bits/invoke.h:74 (pivxd+0x2eef14)\n #1 std::__invoke_result::type std::__invoke(void (CValidationInterface::*&)(CConnman*), CValidationInterface*&, CConnman*&&) /usr/include/c++/12/bits/invoke.h:96 (pivxd+0x2eefbb)\n #2 void std::_Bind))(CConnman*)>::__call(std::tuple&&, std::_Index_tuple<0ul, 1ul>) /usr/include/c++/12/functional:484 (pivxd+0x2eefbb)\n ...\n ```\n\nACKs for top commit: ddbd4b01549999efa183373e349fc963d0f76aa2\n Duddino:\n utACK ddbd4b01549999efa183373e349fc963d0f76aa2\n Liquid369:\n tACK ddbd4b01549999efa183373e349fc963d0f76aa2\n\nTree-SHA512: 94d55effc11f14f755f27c30ef1b6801a235bc314cc34312ebb14b75525824d3b11bb7812389d9977c30a0929d62fb745bd5c1a15249708014bd573132a5e55c","shortMessageHtmlLink":"Merge #2924: [Bug] Fix validation interface data race"}},{"before":"694eb5987028efba63145355ca7f54073e07fc4c","after":"afb54472482bd8c567c63fc6be20c0d241b417d4","ref":"refs/heads/master","pushedAt":"2024-04-20T06:58:53.000Z","pushType":"push","commitsCount":13,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2918: [Build] Update m4 macros from upstream\n\n90b1892c5a402537b0eee5197344e6c4c8dbc964 build: AX_BOOST_UNIT_TEST_FRAMEWORK() serial 22 (Fuzzbawls)\n92d478cbd8ff7899298649cf7a9b5a1897fdf5b6 build: AX_BOOST_THREAD() serial 33 (Fuzzbawls)\n103b802de4e61ed4dbb2b32ae634ea2cc39b96a4 build: AX_BOOST_SYSTEM() serial 20 (Fuzzbawls)\n1712d9a7f5a7ad4914c9c3c39f4e9475ddd2f3dd build: AX_BOOST_FILESYSTEM() serial 28 (Fuzzbawls)\n583adf64fbd2eeb1af0a7b35481f239331dedfa1 build: AX_BOOST_CHRONO() serial 5 (Fuzzbawls)\n7d93e29a7a2ce203283daefc4da451a33da5a61c build: AX_BOOST_BASE() serial 54 (Fuzzbawls)\n076fbf407a7ea159c01c65dd4417e0c9db86a48f build: AX_PTHREAD() serial 31 (Fuzzbawls)\n8813235b8b8c57326b06b3e7fe53b4c45891026a build: AX_GCC_FUNC_ATTRIBUTE() serial 13 (Fuzzbawls)\n3596f0f2699f5024f93a6e36862186af9f4b099a build: AX_CXX_COMPILE_STDCXX() serial 18 (Fuzzbawls)\n52a11ff981bd0bc25b1e4c8025103d5083d42758 build: AX_CHECK_PREPROC_FLAG() serial 6 (Fuzzbawls)\n3200d3f38d5511d31eb1781a46360383db6e33ee build: AX_CHECK_LINK_FLAG() serial 6 (Fuzzbawls)\nfd783608a25d32cb16cbcf1fae3c1dd7ed6c9e61 build: AX_CHECK_COMPILE_FLAG() serial 6 (Fuzzbawls)\n\nPull request description:\n\n This is the first part in what will be a series of updates to our autotools build system. these commits are simply updating macro scripts from their upstream published versions. the only manual change that i've made is to ensure there is a new line at the bottom of each file.\n\nACKs for top commit: 90b1892c5a402537b0eee5197344e6c4c8dbc964\n panleone:\n utACK 90b1892c5a402537b0eee5197344e6c4c8dbc964,\n Liquid369:\n tACK 90b1892c5a402537b0eee5197344e6c4c8dbc964\n\nTree-SHA512: 273dec63811972835802ee890206e159494ec8934dac4e570bb74013473b4716022dcc933e593ab4634334a2acabf81e4e94df99d4d96b3aeaa6f328468bd7e1","shortMessageHtmlLink":"Merge #2918: [Build] Update m4 macros from upstream"}},{"before":"db78a7ec2d9ffbb49293862c9b7fd091e6ad5f82","after":"694eb5987028efba63145355ca7f54073e07fc4c","ref":"refs/heads/master","pushedAt":"2024-04-20T06:53:42.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2923: [Bug] Fix wallet data race\n\nf9a6ebddfa27e1678e464a249759cfe1649143d1 fix: solve data race by making nTimeBestReceived atomic (ale)\n4331c3007b1211998d74a66e908f2de7c82ec564 refactor: move nTimeBestReceived to CWallet (ale)\n\nPull request description:\n\n First commit is a small refactor: the global variable `nTimeBestReceived` is now a private member of the `CWallet` class, as it was used only there.\n\n Second commit: fix the following data race by making `nTimeBestReceived` atomic\n\n ```\n WARNING: ThreadSanitizer: data race (pid=18270)\n Write of size 8 at 0x7b6800000ed8 by thread T16:\n #0 CWallet::UpdatedBlockTip(CBlockIndex const*, CBlockIndex const*, bool) wallet/wallet.cpp:2094 (pivxd+0x5058c9)\n #1 void std::__invoke_impl(std::__invoke_memfun_deref, void (CValidationInterface::*&)(CBlockIndex const*, CBlockIndex const*, bool), CValidationInterface*&, CBlockIndex const*&&, CBlockIndex const*&&, bool&&) /usr/include/c++/12/bits/invoke.h:74 (pivxd+0x2ee1c0)\n #2 std::__invoke_result::type std::__invoke(void (CValidationInterface::*&)(CBlockIndex const*, CBlockIndex const*, bool), CValidationInterface*&, CBlockIndex const*&&, CBlockIndex const*&&, bool&&) /usr/include/c++/12/bits/invoke.h:96 (pivxd+0x2ee25a)\n #3 void std::_Bind, std::_Placeholder<2>, std::_Placeholder<3>))(CBlockIndex const*, CBlockIndex const*, bool)>::__call(std::tuple&&, std::_Index_tuple<0ul, 1ul, 2ul, 3ul>) /usr/include/c++/12/functional:484 (pivxd+0x2ee25a)\n ...\n\n Previous read of size 8 at 0x7b6800000ed8 by thread T35 (mutexes: write M134298, write M132880):\n #0 CWallet::ResendWalletTransactions(CConnman*) wallet/wallet.cpp:2065 (pivxd+0x515b25)\n #1 void std::__invoke_impl(std::__invoke_memfun_deref, void (CValidationInterface::*&)(CConnman*), CValidationInterface*&, CConnman*&&) /usr/include/c++/12/bits/invoke.h:74 (pivxd+0x2eef45)\n #2 std::__invoke_result::type std::__invoke(void (CValidationInterface::*&)(CConnman*), CValidationInterface*&, CConnman*&&) /usr/include/c++/12/bits/invoke.h:96 (pivxd+0x2eefb9)\n #3 void std::_Bind))(CConnman*)>::__call(std::tuple&&, std::_Index_tuple<0ul, 1ul>) /usr/include/c++/12/functional:484 (pivxd+0x2eefb9)\n ...\n ```\n\nACKs for top commit: f9a6ebddfa27e1678e464a249759cfe1649143d1\n Duddino:\n utACK f9a6ebddfa27e1678e464a249759cfe1649143d1\n Liquid369:\n tACK f9a6ebddfa27e1678e464a249759cfe1649143d1\n Fuzzbawls:\n ACK f9a6ebddfa27e1678e464a249759cfe1649143d1\n\nTree-SHA512: c1de883956bf0958204b05c338831c27f694e6453e74b77e3347ae12a3cbd69df2fe1120bae3fca72dab14587c0c499c4f92d5c53943305855e66fc1275ab4fa","shortMessageHtmlLink":"Merge #2923: [Bug] Fix wallet data race"}},{"before":"f428a7429c89f685c2468cf4ff3c8b9d92047950","after":"db78a7ec2d9ffbb49293862c9b7fd091e6ad5f82","ref":"refs/heads/master","pushedAt":"2024-04-06T20:28:47.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2922: [GA] Bump native macOS runner versions\n\n454fbfd858f282858b372361b660ac79d35d327b [GA] Bump native macOS runner versions (Fuzzbawls)\n\nPull request description:\n\n A recent 3rd party server outage for the miniupnpc library has caused macOS 11 jobs to fail. While the homebrew package manager for macOS has fixed the issue on their end, GitHub has no clear intention to update their macOS 11 runner image due to macOS 11 runners already being deprecated.\n\n macOS 11 support will be removed from GA completely on June, 28 2024. Pre-emptively bump the os runner versions we use to macOS 12 and macOS 14 (the latter of which runs on Apple's new CPU architecture).\n\n Relevant and required build system changes have also been applied to support the new macOS 14 runner environment.\n\nACKs for top commit: 454fbfd858f282858b372361b660ac79d35d327b\n panleone:\n utACK 454fbfd858f282858b372361b660ac79d35d327b\n Liquid369:\n tACK 454fbfd858f282858b372361b660ac79d35d327b\n\nTree-SHA512: bb5b1965ae99b9e7eda0d464d07b1d8226a00a0aa27be84b2d7cf18f265ecdd759b5eaeba83316a75376100f8a37bb61fe96048a40746ed71febb3e2505cedd8","shortMessageHtmlLink":"Merge #2922: [GA] Bump native macOS runner versions"}},{"before":"7954d0a65160712a646633774baf073012e82917","after":"f428a7429c89f685c2468cf4ff3c8b9d92047950","ref":"refs/heads/master","pushedAt":"2024-04-04T07:10:01.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2920: [Http] [Test] Fix test failures on shutdown\n\n05c30a84fb834db3a6945585fad9994607cc5610 Merge #14413: tests: Allow closed rpc handler in assert_start_raises_init_error (MarcoFalke)\ncb65d0af5492d917d394e0aab70668764a35dd3d Merge #14993: rpc: Fix data race (UB) in InterruptRPC() (Wladimir J. van der Laan)\ncf6cb299c165c491994a75dc984ae6d3362278ab Merge #14670: http: Fix HTTP server shutdown (Wladimir J. van der Laan)\nd19d9faad595fa54a03a244eb7efa1219bb3a926 Call RPCNotifyBlockChange on RPC stopped (ale)\naf10755fcd0795524de6321a20239b8189cd52b5 Merge #11006: Improve shutdown process (Wladimir J. van der Laan)\n\nPull request description:\n\n The aim of this PR is fixing the functional test errors that we get sometimes during shutdown, for example the failure of this action https://github.com/PIVX-Project/PIVX/actions/runs/8429115630/job/23082877380\n\n In a few words, on HTTP server shutdown, sometimes 2 seconds are not enough time to finish handling all the RPC requests.\n\n `2024-03-26T01:35:26Z HTTP event loop did not exit within allotted time, sending loopbreak`\n\n So after this point all existing RPC requests (in particular the `stop()` one) does not receive any answer... And this lead to functional tests failing at the end.\n\n For more info see the discussion in each backported PR.\n\n Backport bitcoin PRs #11006 #14670 #14993 #14413\n\nACKs for top commit: 05c30a84fb834db3a6945585fad9994607cc5610\n Liquid369:\n tACK 05c30a84fb834db3a6945585fad9994607cc5610\n Fuzzbawls:\n ACK 05c30a84fb834db3a6945585fad9994607cc5610\n\nTree-SHA512: 3fa2d7d9f11f851dbf3703a70e45a12905cb801156b32654f624487c386d76d4eebbc9d54418f4fbe0ac500afeed626636cda2dc942294ea991ff5cde47b07f4","shortMessageHtmlLink":"Merge #2920: [Http] [Test] Fix test failures on shutdown"}},{"before":"e4f61cddfb5a7150fd72d3c9a96847f1e780e86e","after":"7954d0a65160712a646633774baf073012e82917","ref":"refs/heads/master","pushedAt":"2024-04-02T09:35:54.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2917: [LLMQ] Improve thread handling\n\n44116cf9f0eaf9855d10aeb179990b72dd79b556 Separate Init from Start and Stop from Destroy functions for Chainlock handler (ale)\n581eabebe97e463543e9e69aa436c0ee853d7664 Add Interrupt step for signing_share thread and do NOT call StopWorkerThread twice (ale)\n8e85ca21ea94a8a25f4567fea487c695b8700fd1 promote chainLocksHandler to unique pointer (ale)\n4f579eb29177a6e5d269c48dbe94987d27e32d20 promote quorumSigningManager to unique pointer (ale)\n4820a6338ba15c2f41099af3508519d97f60a016 promote quorumSigSharesManager to unique pointer (ale)\n\nPull request description:\n\n Fix some issues in the LLMQ threads handling, that might be also causing some problems in some tests that randomly fail during the final `ShutDown()` phase.\n\n First 3 commits are just trivial refactor:\n Use unique pointers in place of normal pointers to be consistent with the style used for other llmq managers.\n\n Fourth commit:\n In `CSigSharesManager` the function `StopWorkerThread()` was being called twice. The wrong call was the one in the destructor which has been removed.\n The rest of the diff is basically a copy and paste from [net_masternodes.cpp](https://github.com/PIVX-Project/PIVX/blob/master/src/tiertwo/net_masternodes.cpp) (the variable `interruptNet` of that file plays the exact same role of the variable `interruptSigningShare` that I have added).\n This new version should be the right way to manage the thread\n\n Fifth commit:\n In the chainlock manager split the `Init` from the `Start` and the `Stop` from the `Destroy` phases, as we do for all other llmq managers.\n\nACKs for top commit: 44116cf9f0eaf9855d10aeb179990b72dd79b556\n Duddino:\n utACK 44116cf9f0eaf9855d10aeb179990b72dd79b556\n Liquid369:\n tACK 44116cf9f0eaf9855d10aeb179990b72dd79b556\n Fuzzbawls:\n ACK 44116cf9f0eaf9855d10aeb179990b72dd79b556\n\nTree-SHA512: 41a432781861753ce29904093fc6f8771d8745babd498526c5fa6890703de96078c6a242c42ebc292ddefa0c5c0488effb8f6f367771af229f066132a8004eba","shortMessageHtmlLink":"Merge #2917: [LLMQ] Improve thread handling"}},{"before":"d75c161090d8831a2fd27bc874a0fd6f0eb98a83","after":"e4f61cddfb5a7150fd72d3c9a96847f1e780e86e","ref":"refs/heads/master","pushedAt":"2024-04-02T05:24:07.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2916: [Test] speed un tiertwo_governance_sync_basic\n\n471cae3838f4a0c133fff7800162df816bf90567 Do not sleep after staking and after sending pings (ale)\n\nPull request description:\n\n `tiertwo_governance_sync_basic` is by far the slowest test that we have. Profiling showed that most of the time was spent in the function stake() which slept for a total of 2 seconds in each call.\n\n Those 2 seconds sleep were actually useless and have been removed.\n With this simple change the total running time of the test on my machine dropped from `15` minutes to only `6` minutes.\n\n To prove that indeed sleeping was useless I tried to run the same test in parallel 15 times, and it never failed, see here:\n https://github.com/panleone/PIVX/actions/runs/8420343441\n\nACKs for top commit: 471cae3838f4a0c133fff7800162df816bf90567\n Duddino:\n utACK 471cae3838f4a0c133fff7800162df816bf90567\n Liquid369:\n tACK 471cae3838f4a0c133fff7800162df816bf90567\n Fuzzbawls:\n ACK 471cae3838f4a0c133fff7800162df816bf90567\n\nTree-SHA512: 6b00a18c7edd6dffaf9c5df3f53c8481c4312f7d8a63819010289c17b5ab7715aeafb901c8da885515fa59a093ab6e101c572972823ac2ca5e5c53139921f063","shortMessageHtmlLink":"Merge #2916: [Test] speed un tiertwo_governance_sync_basic"}},{"before":"75ad9145ac5e569954127ad3fa36f2e805bc811e","after":"d75c161090d8831a2fd27bc874a0fd6f0eb98a83","ref":"refs/heads/master","pushedAt":"2024-03-30T06:40:37.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2915: [Test] [DMNs] Split special transaction validation\n\n607ba813f69139ecc7246431855be7c5b8b657d0 test: add trivial validation invalid tests (ale)\n2c87e7863fa2360a4b022629da4371946aef3c19 test: add trivial validation tests (ale)\n325a204e97238ca13352d43e8f7cfc1680f589f0 Verify match between type and tx version in GetValidatedTxPayload (ale)\nbf373bf1aee415a954b5a18aa410580c3a8f23cc Refactor special_tx_validation (ale)\n78c7d266f7e8c041fd12adbe9200c169241a3a7a Add SPECIAL_TX_TYPE member to payload classes (ale)\n357f572d1b0694bdc6832d5dd5390e861c36a63b Add IsTriviallyValid for special payloads (ale)\n\nPull request description:\n\n First 4 commits are a (almost) move only refactor:\n The self contained part of special transaction validation (i.e the part based only on specialtx info and not on full chain and masternode list) has been moved to functions `IsTriviallyValid`.\n\n Last 2 commits improve unit test coverage:\n I have added two files with a list of special txs which are either valid or invalid. Test consist in correctly deserializing the txs and verifying that valid/invalid ones are indeed considered valid/invalid.\n\nACKs for top commit: 607ba813f69139ecc7246431855be7c5b8b657d0\n Liquid369:\n tACK 607ba813f69139ecc7246431855be7c5b8b657d0\n Duddino:\n utACK 607ba813f69139ecc7246431855be7c5b8b657d0\n Fuzzbawls:\n ACK 607ba813f69139ecc7246431855be7c5b8b657d0\n\nTree-SHA512: 59a810d49c17943e2dfc10d95e7886922b42cfa2c91b6f8d77d64aa2a386fdebe137c11eb8f93188d79fcd0bae42aceeb2fc3d63af2a3abc1b2ac1cf103d31ea","shortMessageHtmlLink":"Merge #2915: [Test] [DMNs] Split special transaction validation"}},{"before":"efaa521c8b8a4846781ec7e4c0a701b9240a9a7c","after":"75ad9145ac5e569954127ad3fa36f2e805bc811e","ref":"refs/heads/master","pushedAt":"2024-03-30T06:31:32.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2919: [Bug] Fix data race\n\n35c9b1efd3edcccde1b67bd0358e90ae1f9a80e3 Fix data race (ale)\n\nPull request description:\n\n Fix the data race in which a thread is trying to write `pcoinsTip.cacheSaplingAnchors`:\n `CWallet::BlockConnected -> pcoinsTip->GetSaplingAnchorAt(...)`\n At the same time another thread is trying to read `pcoinsTip.cacheSaplingAnchors`:\n `ActivateBestChain -> FlushStateToDisk -> pcoinsTip->DynamicMemoryUsage()`.\n\n The fix is trivial `CWallet::BlockConnected` was not locking the mutex `cs_main` that guards `pcoinsTip`.\n\n This data race was causing the functional test `wallet_basic.py` to randomly fail: To see this I created two test branches where I ran `wallet_basic.py` 50 times in parallel. One branch has this fix the other doesn't.\n\n The github action for the branch without this fix failed many times\n https://github.com/panleone/PIVX/actions/runs/8428460478\n\n The github action for the branch with this fixed always passed instead\n https://github.com/panleone/PIVX/actions/runs/8428472901\n\nACKs for top commit: 35c9b1efd3edcccde1b67bd0358e90ae1f9a80e3\n Duddino:\n utACK 35c9b1efd3edcccde1b67bd0358e90ae1f9a80e3\n Liquid369:\n tACK 35c9b1efd3edcccde1b67bd0358e90ae1f9a80e3\n Fuzzbawls:\n ACK 35c9b1efd3edcccde1b67bd0358e90ae1f9a80e3\n\nTree-SHA512: a5cea7f1b1478045f0e642c306f8f0427a10e92a13cc61e830bb214d4c5d1ba234cba1f628606ee02d0acc68c2719a981433f84fadbbd559af885e14e6353489","shortMessageHtmlLink":"Merge #2919: [Bug] Fix data race"}},{"before":"4c2ed24c6cd7e3974c03fb015e8b5bf01b8803b9","after":"efaa521c8b8a4846781ec7e4c0a701b9240a9a7c","ref":"refs/heads/master","pushedAt":"2024-03-23T05:29:48.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2914: [Test] Speed up functional tests\n\n26ed4d4835f95d70f4e4a470424806ab6e508215 Do not arbitrarily sleep when waiting for all messages (Alessandro Rezzi)\n82a36fde143426d03a1c59973fad31da0fca58dd remove many other useless time.sleep (Alessandro Rezzi)\n310ebd1f1c76e844ec4bce20b862670981ac8247 Do not sleep in is_node_stopped (Alessandro Rezzi)\n998233efd1e692dce6ef7273c1952d3b140d3918 Connect all nodes in parallel (Alessandro Rezzi)\necc512073f2935a31a1175ea80c32e00112fc53c test: Do not sleep inside wait_for_rpc_connection (Alessandro Rezzi)\n\nPull request description:\n\n The aim of this PR is making functional test run faster\n\n First commit:\n Sleeping inside `wait_for_rpc_connection` is useless since in case of failure it will try again rather than throwing error.\n\n Second commit:\n profiling showed that waiting for all nodes to connect to each other was very slow (`8` nodes took about ~`32` seconds on my PC). If we connect them in parallel time is much faster ( more or less `4` seconds on my PC)\n\n Third commit:\n sleeping inside `is_node_stopped` is useless since it is always used in operations like `wait_until_stopped`, and in case a node is not stopped it will wait and try again rather than throwing error.\n\n Fourth commit:\n removed many other big `time.sleep()` that made everything go overall much slower. This is the only commit that I'm not 100% sure so if we see that some test fail at the beginning (I mean before `run_test()` is called) this one can be reverted.\n\n Fifth commit:\n Make faster and solve the failure of `p2p_invalid_messages.py`:\n When receiving lots of messages use a timeout system, instead of sleeping for an arbitrary amount of time (30 seconds, which sometimes was not enough)\n\nACKs for top commit: 26ed4d4835f95d70f4e4a470424806ab6e508215\n Liquid369:\n tACK 26ed4d4835f95d70f4e4a470424806ab6e508215\n Duddino:\n utACK 26ed4d4835f95d70f4e4a470424806ab6e508215\n Fuzzbawls:\n ACK 26ed4d4835f95d70f4e4a470424806ab6e508215\n\nTree-SHA512: e0da682fa0c5f53e7c4179e00f4afe23455353326383ff36ee0459ccc8b175f12dc9da330086faf3ce596487927bc7fba30aa5f6bef9b5c8ff130da3d8228eaa","shortMessageHtmlLink":"Merge #2914: [Test] Speed up functional tests"}},{"before":"71db39899744ae5c3f526f7c8e88c1b8a23ef743","after":"4c2ed24c6cd7e3974c03fb015e8b5bf01b8803b9","ref":"refs/heads/master","pushedAt":"2024-03-22T05:06:32.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2912: [Build] Bump master to 5.6.99\n\n2f5249c0422fe4e2bb95cb5b60fcc739c1d84f40 [Build] Bump master to 5.6.99 (Fuzzbawls)\n\nPull request description:\n\n Bumps `master` branch to 5.6.99 now that 5.6.1 has been released.\n\nACKs for top commit: 2f5249c0422fe4e2bb95cb5b60fcc739c1d84f40\n panleone:\n utACK 2f5249c0422fe4e2bb95cb5b60fcc739c1d84f40\n Liquid369:\n tACK 2f5249c0422fe4e2bb95cb5b60fcc739c1d84f40\n\nTree-SHA512: ce4abe4e196177100f59f7c54e033937010a4baf3b79b1cbc0b3d73beb58b7120bcd13a66132c815ddfa7c5a65b824c96a479bed8258a9cdc490bc87e438eb99","shortMessageHtmlLink":"Merge #2912: [Build] Bump master to 5.6.99"}},{"before":"ae754446d0ce5a46f467b6a3332afcad47a8865e","after":"71db39899744ae5c3f526f7c8e88c1b8a23ef743","ref":"refs/heads/master","pushedAt":"2024-03-22T05:03:53.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2909: [Trivial] Fix typo reccomended->recommended\n\n1259086221eaa06d9bb48e7fef16aa6493055999 [Trivial] Fix typo reccomended->recommended (Duddino)\n\nPull request description:\n\n Codespell complained of this typo\n\nACKs for top commit: 1259086221eaa06d9bb48e7fef16aa6493055999\n Fuzzbawls:\n ACK 1259086221eaa06d9bb48e7fef16aa6493055999\n panleone:\n utACK 1259086221eaa06d9bb48e7fef16aa6493055999\n\nTree-SHA512: a247bb2f1ef51e3f2630a08043963833adb1b12c3b9b50322f330a9f1dd7273dbb8987e1f0444869bab513c079c5c272fd52236f946b08395a2552f261eda13c","shortMessageHtmlLink":"Merge #2909: [Trivial] Fix typo reccomended->recommended"}},{"before":"8c359dd303417722e4563d41692ecf8cae323449","after":"ae754446d0ce5a46f467b6a3332afcad47a8865e","ref":"refs/heads/master","pushedAt":"2024-03-21T05:02:40.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2911: [GA] Use new versioned qt@5 homebrew package name\n\n9e6d17b9392223f79bc08bce5d55d4b84ebe724d [GA] Use new versioned qt@5 homebrew package name (Fuzzbawls)\n\nPull request description:\n\n Homebrew recently removed the legacy symlinks for the `qt5` package and is now only using the versioned `qt@5` naming. Adjust accordingly.\n\nACKs for top commit: 9e6d17b9392223f79bc08bce5d55d4b84ebe724d\n panleone:\n tACK 9e6d17b9392223f79bc08bce5d55d4b84ebe724d\n Liquid369:\n tACK 9e6d17b9392223f79bc08bce5d55d4b84ebe724d\n\nTree-SHA512: e3a1f499326afc5bde8b60e49709c58ddbf3d86f7316730b6884e049b35f6f5ecdaa726339baf2aeb671abb14a1d13a6e78870a7dc9d8b48e1427571ccbc3a41","shortMessageHtmlLink":"Merge #2911: [GA] Use new versioned qt@5 homebrew package name"}},{"before":"7d134c64139aaba58b118e3dc8cd73ebbda24121","after":"af60f19642c6356061049df253e8036e81879f4e","ref":"refs/heads/5.6","pushedAt":"2024-02-20T21:19:31.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Build: generate 5.6.1 manpages","shortMessageHtmlLink":"Build: generate 5.6.1 manpages"}},{"before":"4ca4c397ecaf101916ce3cc3d0a6ca119f93ec0d","after":"8c359dd303417722e4563d41692ecf8cae323449","ref":"refs/heads/master","pushedAt":"2024-02-20T20:40:12.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2908: [Core] Fix Exchange address activation\n\nd7d30dcc4dbeddd8c0c8c348528df5913912ce46 Change exchange address functional tests (Duddino)\n6c012831735b0e8b5c1a73eb9db5f643341a5529 Fix Exchange address activation (Duddino)\n\nPull request description:\n\n Change exchange address activation with the following:\n - Before 5.6 activation, accept TxOuts with OP_EXCHANGEADDR, even if they have sapling data in it\n - Before 5.6 activation, treat OP_EXCHANGEADDR as OP_UNKNOWN, thus rejecting any attempt at spending them\n - After 5.6 activation, keep things as is (Don't accept exchange address UTXOs if the tx has sapling data)\n\nACKs for top commit: d7d30dcc4dbeddd8c0c8c348528df5913912ce46\n Liquid369:\n tACK d7d30dcc4dbeddd8c0c8c348528df5913912ce46\n panleone:\n utACK d7d30dcc4dbeddd8c0c8c348528df5913912ce46\n\nTree-SHA512: 34f2cb7e8c2ce71c3e4fcc6fd977853e4828381e23a65b85cc8f86b95da7fe640b1d28c337d9f32df4d8d833225794a8cd1120474c1ab2c58062afc55612f3b5","shortMessageHtmlLink":"Merge #2908: [Core] Fix Exchange address activation"}},{"before":"8df4dc00e2970458c6c170336bb801450828c702","after":"4ca4c397ecaf101916ce3cc3d0a6ca119f93ec0d","ref":"refs/heads/master","pushedAt":"2024-02-20T06:38:06.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2906: Fix optional memo not being checked\n\nb0bf2c22e54eceaf8b2f117bf2dffb9ecd358227 Fix optional memo not being checked (Duddino)\n\nPull request description:\n\n Memos return Nullopt instead of empty string when empty.\n\nACKs for top commit: b0bf2c22e54eceaf8b2f117bf2dffb9ecd358227\n Liquid369:\n tACK b0bf2c22e54eceaf8b2f117bf2dffb9ecd358227\n Fuzzbawls:\n utACK b0bf2c22e54eceaf8b2f117bf2dffb9ecd358227\n\nTree-SHA512: e9e6cd99edaa6d56da59abdfcc4056d2d613cad93203f47d3fc3c65763413e3eef8df50773a82f934fd5e912ae94579a71a5805f30eb00964f71ebd5eb6d271a","shortMessageHtmlLink":"Merge #2906: Fix optional memo not being checked"}},{"before":"3f6c48b207ed121c951547e1700468be3ec7c583","after":"8df4dc00e2970458c6c170336bb801450828c702","ref":"refs/heads/master","pushedAt":"2024-02-20T06:35:46.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2905: Restore Mainnet 'EXM' Prefix\n\n54459570903430276539b1836f7d26142ee29e46 Set Mainnet 'EXM' Prefix (Liquid)\n\nPull request description:\n\n This will restore the Mainnet prefix to `EXM` from the current `EX` setting that is returning `44` in production.\n\nACKs for top commit: 54459570903430276539b1836f7d26142ee29e46\n Duddino:\n tACK 54459570903430276539b1836f7d26142ee29e46\n Fuzzbawls:\n ACK 54459570903430276539b1836f7d26142ee29e46\n\nTree-SHA512: cb0e34cf0899768a1d69fea1c95912dd11bd97a10e294dbcb25435bf42f1a6f599091e9a4ca1c14ea224864b687fca8d03f0e40f0c2e91575eff6eee5615cc9d","shortMessageHtmlLink":"Merge #2905: Restore Mainnet 'EXM' Prefix"}},{"before":"9a60dd86d7d17f4aa922c69831950a3a997cb2a1","after":"3f6c48b207ed121c951547e1700468be3ec7c583","ref":"refs/heads/master","pushedAt":"2024-02-19T17:14:33.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2904: Fix unititialized booleans\n\n1021b81147825be8e1252dc20be5ca6220e72254 Fix unititialized booleans (Duddino)\n\nPull request description:\n\n This PR fixes some uninitialized booleans. This fixes the issue of not being able to send to addresses in the qt version of PIVX\n\nACKs for top commit: 1021b81147825be8e1252dc20be5ca6220e72254\n Fuzzbawls:\n utACK 1021b81147825be8e1252dc20be5ca6220e72254\n Liquid369:\n tACK 1021b81147825be8e1252dc20be5ca6220e72254\n\nTree-SHA512: e51ce738d2c13cc7a1c2ac80ab2c880457d9600869940b3893e1b9836257c1f60b3f6c3abcccd485309fe506bd0c16bb7d0a810ed2f3de6471e44d19170344ef","shortMessageHtmlLink":"Merge #2904: Fix unititialized booleans"}},{"before":"e44ebdc647d2e7354eba50caff30204125c35437","after":"7d134c64139aaba58b118e3dc8cd73ebbda24121","ref":"refs/heads/5.6","pushedAt":"2024-02-17T03:55:37.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Doc: update manpages for 5.6.0","shortMessageHtmlLink":"Doc: update manpages for 5.6.0"}},{"before":"b2987da88f3d91d9e52f3d75c4c7f2eeb2651eba","after":"e44ebdc647d2e7354eba50caff30204125c35437","ref":"refs/heads/5.6","pushedAt":"2024-02-17T03:45:47.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Doc: update manpages for 5.6.0","shortMessageHtmlLink":"Doc: update manpages for 5.6.0"}},{"before":null,"after":"b2987da88f3d91d9e52f3d75c4c7f2eeb2651eba","ref":"refs/heads/5.6","pushedAt":"2024-02-17T03:40:10.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Doc: update manpages for 5.6.0","shortMessageHtmlLink":"Doc: update manpages for 5.6.0"}},{"before":"badb446e0b5c8ade5b26d4c944f96cb64afed44e","after":"9a60dd86d7d17f4aa922c69831950a3a997cb2a1","ref":"refs/heads/master","pushedAt":"2024-02-17T00:23:01.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2900: [Core] Bump Protocol Version to 70927\n\n9b7b24620b7ebaf31a40e6b4d81f8a4e80b19f13 Update Protocol Version 70927 (Liquid)\n\nPull request description:\n\n As we integrate new Exchange Addresses into our system, its crucial to ensure compatibility and prevent potential conflicts arising from the new address prefix. So we are updating the protocol version to eliminate any compatibility issues or potentials to fork.\n\nACKs for top commit: 9b7b24620b7ebaf31a40e6b4d81f8a4e80b19f13\n Fuzzbawls:\n ACK 9b7b24620b7ebaf31a40e6b4d81f8a4e80b19f13\n Duddino:\n tACK 9b7b24620b7ebaf31a40e6b4d81f8a4e80b19f13\n\nTree-SHA512: 960caecb5b49874f797df91b2686a3af8db655c0e4aa88964ecef64a451a5878b005ad8cd4ae33a6092961cd531a0355942367ea235a47ef5e7dddc1b5c86015","shortMessageHtmlLink":"Merge #2900: [Core] Bump Protocol Version to 70927"}},{"before":"d293ad272c1c6545a54a80e60c32142fcd455564","after":"badb446e0b5c8ade5b26d4c944f96cb64afed44e","ref":"refs/heads/master","pushedAt":"2024-02-16T21:32:35.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2899: [Build] Update copyright year to 2024\n\n27e4f25d497412d73ebb11e9b825dad943ece02d [Build] Update copyright year to 2024 (Fuzzbawls)\n\nPull request description:\n\n Build-only update of copyright year. A full headers copyright year update will be done separately.\n\nACKs for top commit: 27e4f25d497412d73ebb11e9b825dad943ece02d\n Liquid369:\n uTACK 27e4f25d497412d73ebb11e9b825dad943ece02d\n Duddino:\n utACK 27e4f25d497412d73ebb11e9b825dad943ece02d\n\nTree-SHA512: dd9079806244ed8fe5e37838745edf3822ed9420823acf644d3392c877b76af7d36de7ea1ac30a55abc6946dfb73a266bdab40b8b6630bae1d92145d218435ec","shortMessageHtmlLink":"Merge #2899: [Build] Update copyright year to 2024"}},{"before":"03f038b82fa724978b112def30192abdfb279904","after":"d293ad272c1c6545a54a80e60c32142fcd455564","ref":"refs/heads/master","pushedAt":"2024-02-16T19:14:36.000Z","pushType":"push","commitsCount":19,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2895: [Core][GUI][RPC] Exchange Address\n\n1444336794301f4affe0871ffec67691dd974f38 Fix lint (Liquid)\n7a7cc717c9988ee8893b8a6e4e6f6e07d2b6bee6 Set main net and testnet activation heights (Liquid369)\nb7affc71fb21cbcf0d01415e04dcf39b918feeba Check pre-upgrade ex addr fails (Liquid)\nce86ae7e1ac466962f76f5247603f722756c6ebe Add invalid OP_CODE test (Liquid)\n63a192ca151655237b38df68dd6fc50405345385 More review changes (Liquid)\nd9274a6f56eea0fec4f14f5d63cfc422add99d17 Reorder test and logic (Liquid369)\n19a17dd19857c4ad805256c2c7516655fe831e8c Duddino review changes (Liquid)\n4bef41eb1e482bd0af4465416dbdb1ef0d31687e Review cleanup (Liquid)\n814205969eb6f8506b8773177dec76e705343af0 Remove nExchangeAddrStart (Liquid)\n3c914672a3cf98306021656dd6d38a5fb4e61a73 Add draft release notes (Liquid)\ne6a26bfde6724bc5cc0fb6ae8407836194f49d42 Use Consensus::UPGRADE_V5_6 (Liquid)\n146b81394a1be93eb68a821bc3c90d301d747d43 Handle legacy pre-hd wallets (Liquid)\n035a4b8320c338e961c1b0fdc03b9906686bc40a Apply patch (Liquid)\nc74d76ec0d6c5f8d4b0941f44ae66b9cd29487de Functional test (Liquid)\nfdad4b23a0c25cb063042b0b0126e6895924063b Review adjustments (Liquid)\n770418f53ce3ce11da00e06a8c0adaa8fb4834e7 Add tests (Liquid)\na521fdf9d37d566b0d1a37bf2a1817ccc6254733 Expand CTxDestination to check for ExchangeAddresses and GUI (Liquid)\n9a291df04af801b42684b8e947913d6c02e19fce Core OP_EXCHANGEADDR implementation, scripts, consensus (Liquid)\n\nPull request description:\n\n This PR aims to implement a new OP_CODE and new address type defined as `OP_EXCHANGEADDR` and `EXCHANGE_ADDRESS` respectively.\n With the new year and new regulations upcoming, we have been requested to make things easier on the exchanges by introducing this new address type that will not allow private transactions to be input to this address nor coinstake/coinbase transactions.\n Consensus checks implemented, we have some variance from the FIRO implementation you can reference https://github.com/firoorg/firo/pull/1356/files for the address encoding and decoding.\n OP_CODE introduced is essentially a NOP at the start of the scriptpubkey\n New introduced Prefixes are\n `EX` for Exchange Mainnet\n `EXT` for Exchange Testnet\n `EXT` for Exchange Regtest\n Originally I went for just an E prefix, but for clarity I followed FIRO for having some difference, if we want to go another direction, I am not particular either way anymore.\n\n New RPC command `getnewexchangeaddress` accepts a label to insert into Contacts\n We are not using existing keys to create the pair but generating new.\n\nACKs for top commit: 1444336794301f4affe0871ffec67691dd974f38\n Duddino:\n tACK 1444336794301f4affe0871ffec67691dd974f38\n panleone:\n utACK [1444336](https://github.com/PIVX-Project/PIVX/pull/2895/commits/1444336794301f4affe0871ffec67691dd974f38)\n\nTree-SHA512: 0f94ada2cc2f48119cdcd336715e3b5b4c7395b0d8e263fe92f763bbe276cb7f583a9e1c2ea6f13d3190ebdf301f4212478e2be7725b75574630a80cf785dff8","shortMessageHtmlLink":"Merge #2895: [Core][GUI][RPC] Exchange Address"}},{"before":"ea3d1d6b3f838043a5eaf438abb9adbfba39fde7","after":"03f038b82fa724978b112def30192abdfb279904","ref":"refs/heads/master","pushedAt":"2024-02-16T12:03:32.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2903: [GA] Link Boost 1.76 regardless of pre-existing version\n\n0c4979845a3bac7199c418b72bea641e0c244be4 [GA] Link Boost 1.76 regardless of pre-existing version (Fuzzbawls)\n\nPull request description:\n\n GA's macos-11 runner images have been inconsistent in their inclusion of\n a pre-installed version of the Boost library, and trying to gracefully\n unlink a non-existent package results in an error.\n\n Skip the unlink step and just force overwrite linking boost 1.76.\n\nACKs for top commit: 0c4979845a3bac7199c418b72bea641e0c244be4\n Liquid369:\n tACK 0c4979845a3bac7199c418b72bea641e0c244be4\n Duddino:\n utACK 0c4979845a3bac7199c418b72bea641e0c244be4\n\nTree-SHA512: 9fbc397a447be7a4cabbd28473ce909a555a7fb0dff9197ff409e41bc404424ccd5c914ed835ec21bfc71d3f3916e3f8e267f3f52a9b01b099386d20645a43b8","shortMessageHtmlLink":"Merge #2903: [GA] Link Boost 1.76 regardless of pre-existing version"}},{"before":"cdda6450ba6a16c71db62e66436b98471d9c8b8d","after":"ea3d1d6b3f838043a5eaf438abb9adbfba39fde7","ref":"refs/heads/master","pushedAt":"2024-02-15T22:54:41.000Z","pushType":"push","commitsCount":11,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2896: [Build] Further security and symbol checking updates\n\ne9294f0eb63734b094d049ed8efa94f187f94dd2 GA: Unlink pre-installed boost on macos-11 CMake job (Fuzzbawls)\n294e379c6ca7da3f8110b9949f5f63cab46e175f build: fix ASLR for pivx-cli on Windows (Fuzzbawls)\n3ac841c61c2c388068b1dd2363e92add08b35a85 devtools: Integrate ARCH_MIN_GLIBC_VER table into MAX_VERSIONS in symbol-check.py (Fuzzbawls)\n924ee276ff944666c8cf17fafbff51990d59919d devtools: Add xkb version to symbol-check (W. J. van der Laan)\n3e265ef45083000da11686869338fb33f4646bd9 devtools: Fix verneed section parsing in pixie (W. J. van der Laan)\n68b8cf8f832be847c2202cb833f579b70a1d880c GA: force linking against static libstdc++ on linux (Fuzzbawls)\ncdc48097d07e663ec6a236f38915e6954ea555f0 contrib: Parse ELF directly for symbol and security checks (Fuzzbawls)\nd6cbd854578dd2a6e2e7345d66795cfb8fed1dd0 devtools: Add security check for separate_code (Fuzzbawls)\ne4b82e341a7ba40d751005d17969ea421edeb2c1 build: add -Wl,-z,separate-code to hardening flags (Fuzzbawls)\nc4a6d3c9d93ac29126bb47c20391f5a795b8eff3 contrib: Parse ELF directly for symbol and security checks (Fuzzbawls)\n\nPull request description:\n\n While prepping for the upcoming release, I noticed some errors with gitian builds involving the security/symbol checking that gitian runs during it's build process.\n\n This PR brings in further upstream updates to these scripts, as well as a windows-specific issue with the `pivx-cli.exe` binary. During testing of this PR, I also noticed a Github Actions issue with the most recent macos-11 runner image version.\n\n ---\n Included here are either full or partial backports/cherry picks from the following upstream PRs:\n - https://github.com/bitcoin/bitcoin/pull/18702\n - https://github.com/bitcoin/bitcoin/pull/22244\n - https://github.com/bitcoin/bitcoin/pull/20434\n - https://github.com/bitcoin/bitcoin/pull/19525\n\nACKs for top commit: e9294f0eb63734b094d049ed8efa94f187f94dd2\n Liquid369:\n tACK e9294f0eb63734b094d049ed8efa94f187f94dd2\n Duddino:\n tACK e9294f0eb63734b094d049ed8efa94f187f94dd2\n\nTree-SHA512: fac37b3255e57ace5e1a6781fc50ca292046b02afd440826daf0b774a463a4b84c0853c57173fd8c83e7c1c4537f04912ff09542e25439371ea596d8e4c0dcba","shortMessageHtmlLink":"Merge #2896: [Build] Further security and symbol checking updates"}},{"before":"a949c658b815bc2e817c238aab00ed4711844939","after":"cdda6450ba6a16c71db62e66436b98471d9c8b8d","ref":"refs/heads/master","pushedAt":"2024-02-15T04:34:02.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2901: [Build] Add duddino GPG key\n\n97af1dff272e4fc7fbc3fdcdb77c85824733a808 Add duddino GPG key (Duddino)\n\nPull request description:\n\n Add duddino GPG key\n\nACKs for top commit: 97af1dff272e4fc7fbc3fdcdb77c85824733a808\n Liquid369:\n uTACK 97af1dff272e4fc7fbc3fdcdb77c85824733a808\n Fuzzbawls:\n ACK 97af1dff272e4fc7fbc3fdcdb77c85824733a808\n\nTree-SHA512: 93cbb8ba00d21f1f1c47af673ba5dc1edb999c1795fa1b73a4ea33ba7df46a8cf898ce0d742524f259f1a3fc4ac46793cce4376ab5663051dc7e5ce71c64a6f0","shortMessageHtmlLink":"Merge #2901: [Build] Add duddino GPG key"}},{"before":"c53095a9ed8b672c15d22f3ef21a15cbc427d3be","after":"a949c658b815bc2e817c238aab00ed4711844939","ref":"refs/heads/master","pushedAt":"2024-02-09T06:18:00.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"Fuzzbawls","name":null,"path":"/Fuzzbawls","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7393257?s=80&v=4"},"commit":{"message":"Merge #2898: [Doc] Update gpg keyserver URL\n\n5d3b6a7a366966df02c72278b32d2c33b07ef927 Doc: Update gpg key for Fuzzbawls (Fuzzbawls)\n034c2da8069c6ffa9a77b101e1acf90659358747 Doc: Update gpg keyserver URL (Fuzzbawls)\n\nPull request description:\n\n sks-keyservers.net's line of gpg keyservers is now defunct. Replace with\n Ubuntu's keyserver.\n\n while i'm at it, i've updated to my new gpg key.\n\nACKs for top commit: 5d3b6a7a366966df02c72278b32d2c33b07ef927\n Liquid369:\n tACK 5d3b6a7a366966df02c72278b32d2c33b07ef927\n Duddino:\n ACK 5d3b6a7a366966df02c72278b32d2c33b07ef927\n\nTree-SHA512: 0fb9f558966c080c5ebe1e5f46b6079df25016ae56a85cc0882b5a6995fa3277a505151da7b3738b39ac75648d1f78288d3af04886c207c5bbc0b623bc112a7b","shortMessageHtmlLink":"Merge #2898: [Doc] Update gpg keyserver URL"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEOe4URAA","startCursor":null,"endCursor":null}},"title":"Activity ยท PIVX-Project/PIVX"}