From 1151fba415a5949adfa1bca8bebf135355a0619c Mon Sep 17 00:00:00 2001 From: Chenna Keshava B S <21219765+ckeshava@users.noreply.github.com> Date: Wed, 11 Oct 2023 08:45:45 -0700 Subject: [PATCH 01/12] fix(CI): update workflow for uploading binaries to artifactory (#4746) Update the nix CI runner. This commit does not modify any source code files. The unix builds were successful, but the binaries were not uploaded to the internal artifactory. This PR borrows an idea from @ximinez to attempt to fix this issue. After successful authentication, the `outcome` variable contains a string. In the upload step, we are checking if outcome == 'success' as a prerequisite for uploading the binary. This commit updates the contents of the `outcome` variable. --- .github/workflows/nix.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nix.yml b/.github/workflows/nix.yml index fb017d45bf7..e43ae1379c9 100644 --- a/.github/workflows/nix.yml +++ b/.github/workflows/nix.yml @@ -79,7 +79,7 @@ jobs: - name: try to authenticate to ripple Conan remote id: remote run: | - echo outcome=$(conan user --remote ripple ${{ secrets.CONAN_USERNAME }} --password ${{ secrets.CONAN_TOKEN }} && echo success || echo failure) | tee ${GITHUB_OUTPUT} + echo outcome=$(conan user --remote ripple ${{ secrets.CONAN_USERNAME }} --password ${{ secrets.CONAN_TOKEN }} >&2 && echo success || echo failure) | tee ${GITHUB_OUTPUT} - name: archive profile # Create this archive before dependencies are added to the local cache. run: tar -czf conan.tar -C ~/.conan . From 50cc1cf0c97f6f3cbf8deb6e532804d3196fa319 Mon Sep 17 00:00:00 2001 From: Ed Hennis Date: Thu, 12 Oct 2023 13:10:35 -0400 Subject: [PATCH 02/12] fix(PathRequest): remove incorrect assert (#4743) The assert is saying that the only reason `pathFinder` would be null is if the request was aborted (connection dropped, etc.). That's what `continueCallback()` checks. But that is very clearly not true if you look at `getPathFinder`, which calls `findPaths`, which can return false for many reasons. Fix #4744 --- src/ripple/app/paths/PathRequest.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/ripple/app/paths/PathRequest.cpp b/src/ripple/app/paths/PathRequest.cpp index 02b46c81e91..f2aa363f934 100644 --- a/src/ripple/app/paths/PathRequest.cpp +++ b/src/ripple/app/paths/PathRequest.cpp @@ -538,7 +538,6 @@ PathRequest::findPaths( continueCallback); if (!pathfinder) { - assert(continueCallback && !continueCallback()); JLOG(m_journal.debug()) << iIdentifier << " No paths found"; continue; } From c915984340e999cf8224e7d9377eeee8acbc0f2e Mon Sep 17 00:00:00 2001 From: Jackson Mills Date: Thu, 12 Oct 2023 10:12:17 -0700 Subject: [PATCH 03/12] docs(conan.md): fix broken link to conanfile.py (#4740) --- docs/build/conan.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/build/conan.md b/docs/build/conan.md index 01fb7150d38..210db18a5df 100644 --- a/docs/build/conan.md +++ b/docs/build/conan.md @@ -69,7 +69,7 @@ compiler and linker options for all dependencies _and_ this project. However, that is very tedious and error-prone, which is why we lean on tools like Conan. -We have written a Conan configuration file ([`conanfile.py`](./conanfile.py)) +We have written a Conan configuration file ([`conanfile.py`](../../conanfile.py)) so that Conan can be used to correctly download, configure, build, and install all of the dependencies for this project, using a single set of compiler and linker options for all of them. From 1fde585003c286841e3884012bef000d1ff5f4ee Mon Sep 17 00:00:00 2001 From: Ed Hennis Date: Mon, 16 Oct 2023 17:26:40 -0400 Subject: [PATCH 04/12] fix(CI): Call python to upgrade pip on Windows (#4768) In Windows, we need to call `python` in order for the `pip` upgrade command to work. This changes the GitHub Actions Windows CI job to use the correct command to upgrade PIP, fixing this error: ``` ERROR: To modify pip, please run the following command: C:\hostedtoolcache\windows\Python\3.9.13\x64\python.exe -m pip install --upgrade pip ``` A future task is to make job run on heavy Windows runners so that it doesn't take so long. Context: #4596 --- .github/workflows/windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 4988e323e2b..98cbb9acc40 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -36,7 +36,7 @@ jobs: id: pip-cache shell: bash run: | - pip install --upgrade pip + python -m pip install --upgrade pip echo "dir=$(pip cache dir)" | tee ${GITHUB_OUTPUT} - name: restore Python cache directory uses: actions/cache@v3 From 1fc1eb9f68cb23d07a1858ed001bf5d57e304d81 Mon Sep 17 00:00:00 2001 From: Elliot Lee Date: Mon, 16 Oct 2023 17:59:19 -0700 Subject: [PATCH 05/12] Set version to 2.0.0-b3 --- src/ripple/protocol/impl/BuildInfo.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ripple/protocol/impl/BuildInfo.cpp b/src/ripple/protocol/impl/BuildInfo.cpp index a0f43df8b64..85659579de6 100644 --- a/src/ripple/protocol/impl/BuildInfo.cpp +++ b/src/ripple/protocol/impl/BuildInfo.cpp @@ -33,7 +33,7 @@ namespace BuildInfo { // and follow the format described at http://semver.org/ //------------------------------------------------------------------------------ // clang-format off -char const* const versionString = "2.0.0-b2" +char const* const versionString = "2.0.0-b3" // clang-format on #if defined(DEBUG) || defined(SANITIZER) From be6ac7e7a17bbe26a47de8c8ef9340c31c14fb46 Mon Sep 17 00:00:00 2001 From: Elliot Lee Date: Tue, 17 Oct 2023 21:27:03 -0700 Subject: [PATCH 06/12] docs(pull_request_template): add API Impact section (#4757) --- .github/pull_request_template.md | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index ca7367b8753..f3c5edd0b0b 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -33,10 +33,27 @@ Please check [x] relevant options, delete irrelevant ones. - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) - [ ] Refactor (non-breaking change that only restructures code) -- [ ] Tests (You added tests for code that already exists, or your new feature included in this PR) -- [ ] Documentation Updates +- [ ] Tests (you added tests for code that already exists, or your new feature included in this PR) +- [ ] Documentation update +- [ ] Chore (no impact to binary, e.g. `.gitignore`, formatting, dropping support for older tooling) - [ ] Release +### API Impact + + + +- [ ] Public API: New feature (new methods and/or new fields) +- [ ] Public API: Breaking change (in general, breaking changes should only impact the next api_version) +- [ ] `libxrpl` change (any change that may affect `libxrpl` or dependents of `libxrpl`) +- [ ] Peer protocol change (must be backward compatible or bump the peer protocol version) +