From 0f5f7ae46e96ca6778960148aa76670163cc02a1 Mon Sep 17 00:00:00 2001 From: woodser Date: Sun, 12 Jan 2025 11:58:09 -0500 Subject: [PATCH 1/7] add startup flag 'updateXmrBinaries=true|false' --- common/src/main/java/haveno/common/config/Config.java | 10 ++++++++++ core/src/main/java/haveno/core/app/HavenoSetup.java | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/common/src/main/java/haveno/common/config/Config.java b/common/src/main/java/haveno/common/config/Config.java index 92359c76f9..897a795a2b 100644 --- a/common/src/main/java/haveno/common/config/Config.java +++ b/common/src/main/java/haveno/common/config/Config.java @@ -117,6 +117,7 @@ public class Config { public static final String BTC_FEE_INFO = "bitcoinFeeInfo"; public static final String BYPASS_MEMPOOL_VALIDATION = "bypassMempoolValidation"; public static final String PASSWORD_REQUIRED = "passwordRequired"; + public static final String UPDATE_XMR_BINARIES = "updateXmrBinaries"; // Default values for certain options public static final int UNSPECIFIED_PORT = -1; @@ -204,6 +205,7 @@ public class Config { public final boolean republishMailboxEntries; public final boolean bypassMempoolValidation; public final boolean passwordRequired; + public final boolean updateXmrBinaries; // Properties derived from options but not exposed as options themselves public final File torDir; @@ -621,6 +623,13 @@ public class Config { .ofType(boolean.class) .defaultsTo(false); + ArgumentAcceptingOptionSpec updateXmrBinariesOpt = + parser.accepts(UPDATE_XMR_BINARIES, + "Update Monero binaries if applicable") + .withRequiredArg() + .ofType(boolean.class) + .defaultsTo(true); + try { CompositeOptionSet options = new CompositeOptionSet(); @@ -733,6 +742,7 @@ public class Config { this.republishMailboxEntries = options.valueOf(republishMailboxEntriesOpt); this.bypassMempoolValidation = options.valueOf(bypassMempoolValidationOpt); this.passwordRequired = options.valueOf(passwordRequiredOpt); + this.updateXmrBinaries = options.valueOf(updateXmrBinariesOpt); } catch (OptionException ex) { throw new ConfigException("problem parsing option '%s': %s", ex.options().get(0), diff --git a/core/src/main/java/haveno/core/app/HavenoSetup.java b/core/src/main/java/haveno/core/app/HavenoSetup.java index a291da5001..eee13f3eec 100644 --- a/core/src/main/java/haveno/core/app/HavenoSetup.java +++ b/core/src/main/java/haveno/core/app/HavenoSetup.java @@ -369,7 +369,7 @@ public class HavenoSetup { // install monerod File monerodFile = new File(XmrLocalNode.MONEROD_PATH); String monerodResourcePath = "bin/" + XmrLocalNode.MONEROD_NAME; - if (!monerodFile.exists() || !FileUtil.resourceEqualToFile(monerodResourcePath, monerodFile)) { + if (!monerodFile.exists() || (config.updateXmrBinaries && !FileUtil.resourceEqualToFile(monerodResourcePath, monerodFile))) { log.info("Installing monerod"); monerodFile.getParentFile().mkdirs(); FileUtil.resourceToFile("bin/" + XmrLocalNode.MONEROD_NAME, monerodFile); @@ -379,7 +379,7 @@ public class HavenoSetup { // install monero-wallet-rpc File moneroWalletRpcFile = new File(XmrWalletService.MONERO_WALLET_RPC_PATH); String moneroWalletRpcResourcePath = "bin/" + XmrWalletService.MONERO_WALLET_RPC_NAME; - if (!moneroWalletRpcFile.exists() || !FileUtil.resourceEqualToFile(moneroWalletRpcResourcePath, moneroWalletRpcFile)) { + if (!moneroWalletRpcFile.exists() || (config.updateXmrBinaries && !FileUtil.resourceEqualToFile(moneroWalletRpcResourcePath, moneroWalletRpcFile))) { log.info("Installing monero-wallet-rpc"); moneroWalletRpcFile.getParentFile().mkdirs(); FileUtil.resourceToFile(moneroWalletRpcResourcePath, moneroWalletRpcFile); From 5e6bf9e22b6bb21fef17da48c32483af8ed1129e Mon Sep 17 00:00:00 2001 From: woodser Date: Tue, 14 Jan 2025 09:10:12 -0500 Subject: [PATCH 2/7] fix fallback prompt with null daemon connection --- core/src/main/java/haveno/core/api/XmrConnectionService.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/haveno/core/api/XmrConnectionService.java b/core/src/main/java/haveno/core/api/XmrConnectionService.java index 2ffcc95d65..dfac9bc85a 100644 --- a/core/src/main/java/haveno/core/api/XmrConnectionService.java +++ b/core/src/main/java/haveno/core/api/XmrConnectionService.java @@ -725,8 +725,8 @@ public final class XmrConnectionService { // poll daemon if (daemon == null) switchToBestConnection(); - if (daemon == null) throw new RuntimeException("No connection to Monero daemon"); try { + if (daemon == null) throw new RuntimeException("No connection to Monero daemon"); lastInfo = daemon.getInfo(); } catch (Exception e) { @@ -753,6 +753,7 @@ public final class XmrConnectionService { // switch to best connection switchToBestConnection(); + if (daemon == null) throw new RuntimeException("No connection to Monero daemon after error handling"); lastInfo = daemon.getInfo(); // caught internally if still fails } From 7fba0faac1fd4341e487e4c47077bf97f367bbd5 Mon Sep 17 00:00:00 2001 From: woodser Date: Tue, 14 Jan 2025 11:02:03 -0500 Subject: [PATCH 3/7] best connection defaults to singular instance --- core/src/main/java/haveno/core/api/CoreApi.java | 4 ++-- .../haveno/core/api/XmrConnectionService.java | 17 ++++++++--------- .../daemon/grpc/GrpcXmrConnectionService.java | 16 ++++++++-------- proto/src/main/proto/grpc.proto | 6 +++--- 4 files changed, 21 insertions(+), 22 deletions(-) diff --git a/core/src/main/java/haveno/core/api/CoreApi.java b/core/src/main/java/haveno/core/api/CoreApi.java index c91d4a405b..5b0c9e247a 100644 --- a/core/src/main/java/haveno/core/api/CoreApi.java +++ b/core/src/main/java/haveno/core/api/CoreApi.java @@ -239,8 +239,8 @@ public class CoreApi { xmrConnectionService.stopCheckingConnection(); } - public MoneroRpcConnection getBestAvailableXmrConnection() { - return xmrConnectionService.getBestAvailableConnection(); + public MoneroRpcConnection getBestXmrConnection() { + return xmrConnectionService.getBestConnection(); } public void setXmrConnectionAutoSwitch(boolean autoSwitch) { diff --git a/core/src/main/java/haveno/core/api/XmrConnectionService.java b/core/src/main/java/haveno/core/api/XmrConnectionService.java index dfac9bc85a..640aa2b404 100644 --- a/core/src/main/java/haveno/core/api/XmrConnectionService.java +++ b/core/src/main/java/haveno/core/api/XmrConnectionService.java @@ -255,17 +255,16 @@ public final class XmrConnectionService { updatePolling(); } - public MoneroRpcConnection getBestAvailableConnection() { + public MoneroRpcConnection getBestConnection() { accountService.checkAccountOpen(); - List ignoredConnections = new ArrayList(); - addLocalNodeIfIgnored(ignoredConnections); - return connectionManager.getBestAvailableConnection(ignoredConnections.toArray(new MoneroRpcConnection[0])); + return getBestConnection(new ArrayList()); } - private MoneroRpcConnection getBestAvailableConnection(Collection ignoredConnections) { + private MoneroRpcConnection getBestConnection(Collection ignoredConnections) { accountService.checkAccountOpen(); Set ignoredConnectionsSet = new HashSet<>(ignoredConnections); addLocalNodeIfIgnored(ignoredConnectionsSet); + if (connectionManager.getConnections().size() == 1 && !ignoredConnectionsSet.contains(connectionManager.getConnections().get(0))) return connectionManager.getConnections().get(0); return connectionManager.getBestAvailableConnection(ignoredConnectionsSet.toArray(new MoneroRpcConnection[0])); } @@ -278,7 +277,7 @@ public final class XmrConnectionService { log.info("Skipping switch to best Monero connection because connection is fixed or auto switch is disabled"); return; } - MoneroRpcConnection bestConnection = getBestAvailableConnection(); + MoneroRpcConnection bestConnection = getBestConnection(); if (bestConnection != null) setConnection(bestConnection); } @@ -329,7 +328,7 @@ public final class XmrConnectionService { if (currentConnection != null) excludedConnections.add(currentConnection); // get connection to switch to - MoneroRpcConnection bestConnection = getBestAvailableConnection(excludedConnections); + MoneroRpcConnection bestConnection = getBestConnection(excludedConnections); // remove from excluded connections after period UserThread.runAfter(() -> { @@ -545,7 +544,7 @@ public final class XmrConnectionService { if (isConnected) { setConnection(connection.getUri()); } else if (getConnection() != null && getConnection().getUri().equals(connection.getUri())) { - MoneroRpcConnection bestConnection = getBestAvailableConnection(); + MoneroRpcConnection bestConnection = getBestConnection(); if (bestConnection != null) setConnection(bestConnection); // switch to best connection } } @@ -610,7 +609,7 @@ public final class XmrConnectionService { // update connection if (connectionManager.getConnection() == null || connectionManager.getAutoSwitch()) { - MoneroRpcConnection bestConnection = getBestAvailableConnection(); + MoneroRpcConnection bestConnection = getBestConnection(); if (bestConnection != null) setConnection(bestConnection); } } else if (!isInitialized) { diff --git a/daemon/src/main/java/haveno/daemon/grpc/GrpcXmrConnectionService.java b/daemon/src/main/java/haveno/daemon/grpc/GrpcXmrConnectionService.java index a03dc5a73e..f0fcdcc984 100644 --- a/daemon/src/main/java/haveno/daemon/grpc/GrpcXmrConnectionService.java +++ b/daemon/src/main/java/haveno/daemon/grpc/GrpcXmrConnectionService.java @@ -47,8 +47,8 @@ import haveno.proto.grpc.CheckConnectionsReply; import haveno.proto.grpc.CheckConnectionsRequest; import haveno.proto.grpc.GetAutoSwitchReply; import haveno.proto.grpc.GetAutoSwitchRequest; -import haveno.proto.grpc.GetBestAvailableConnectionReply; -import haveno.proto.grpc.GetBestAvailableConnectionRequest; +import haveno.proto.grpc.GetBestConnectionReply; +import haveno.proto.grpc.GetBestConnectionRequest; import haveno.proto.grpc.GetConnectionReply; import haveno.proto.grpc.GetConnectionRequest; import haveno.proto.grpc.GetConnectionsReply; @@ -68,7 +68,7 @@ import static haveno.proto.grpc.XmrConnectionsGrpc.XmrConnectionsImplBase; import static haveno.proto.grpc.XmrConnectionsGrpc.getAddConnectionMethod; import static haveno.proto.grpc.XmrConnectionsGrpc.getCheckConnectionMethod; import static haveno.proto.grpc.XmrConnectionsGrpc.getCheckConnectionsMethod; -import static haveno.proto.grpc.XmrConnectionsGrpc.getGetBestAvailableConnectionMethod; +import static haveno.proto.grpc.XmrConnectionsGrpc.getGetBestConnectionMethod; import static haveno.proto.grpc.XmrConnectionsGrpc.getGetConnectionMethod; import static haveno.proto.grpc.XmrConnectionsGrpc.getGetConnectionsMethod; import static haveno.proto.grpc.XmrConnectionsGrpc.getRemoveConnectionMethod; @@ -201,12 +201,12 @@ class GrpcXmrConnectionService extends XmrConnectionsImplBase { } @Override - public void getBestAvailableConnection(GetBestAvailableConnectionRequest request, - StreamObserver responseObserver) { + public void getBestConnection(GetBestConnectionRequest request, + StreamObserver responseObserver) { handleRequest(responseObserver, () -> { - MoneroRpcConnection connection = coreApi.getBestAvailableXmrConnection(); + MoneroRpcConnection connection = coreApi.getBestXmrConnection(); UrlConnection replyConnection = toUrlConnection(connection); - GetBestAvailableConnectionReply.Builder builder = GetBestAvailableConnectionReply.newBuilder(); + GetBestConnectionReply.Builder builder = GetBestConnectionReply.newBuilder(); if (replyConnection != null) { builder.setConnection(replyConnection); } @@ -314,7 +314,7 @@ class GrpcXmrConnectionService extends XmrConnectionsImplBase { put(getCheckConnectionsMethod().getFullMethodName(), new GrpcCallRateMeter(allowedCallsPerTimeWindow, SECONDS)); put(getStartCheckingConnectionMethod().getFullMethodName(), new GrpcCallRateMeter(allowedCallsPerTimeWindow, SECONDS)); put(getStopCheckingConnectionMethod().getFullMethodName(), new GrpcCallRateMeter(allowedCallsPerTimeWindow, SECONDS)); - put(getGetBestAvailableConnectionMethod().getFullMethodName(), new GrpcCallRateMeter(allowedCallsPerTimeWindow, SECONDS)); + put(getGetBestConnectionMethod().getFullMethodName(), new GrpcCallRateMeter(allowedCallsPerTimeWindow, SECONDS)); put(getSetAutoSwitchMethod().getFullMethodName(), new GrpcCallRateMeter(allowedCallsPerTimeWindow, SECONDS)); }} ))); diff --git a/proto/src/main/proto/grpc.proto b/proto/src/main/proto/grpc.proto index c9b8a75445..f99a0feae5 100644 --- a/proto/src/main/proto/grpc.proto +++ b/proto/src/main/proto/grpc.proto @@ -319,7 +319,7 @@ service XmrConnections { } rpc StopCheckingConnection(StopCheckingConnectionRequest) returns (StopCheckingConnectionReply) { } - rpc GetBestAvailableConnection(GetBestAvailableConnectionRequest) returns (GetBestAvailableConnectionReply) { + rpc GetBestConnection(GetBestConnectionRequest) returns (GetBestConnectionReply) { } rpc SetAutoSwitch(SetAutoSwitchRequest) returns (SetAutoSwitchReply) { } @@ -400,9 +400,9 @@ message StopCheckingConnectionRequest {} message StopCheckingConnectionReply {} -message GetBestAvailableConnectionRequest {} +message GetBestConnectionRequest {} -message GetBestAvailableConnectionReply { +message GetBestConnectionReply { UrlConnection connection = 1; } From e1b3cdce2851a3c6547bbbd1f1e139ec5bc04ed9 Mon Sep 17 00:00:00 2001 From: woodser Date: Tue, 14 Jan 2025 11:50:50 -0500 Subject: [PATCH 4/7] move version to last on password and startup screen --- desktop/src/main/java/haveno/desktop/app/HavenoAppMain.java | 2 +- desktop/src/main/java/haveno/desktop/main/MainView.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/desktop/src/main/java/haveno/desktop/app/HavenoAppMain.java b/desktop/src/main/java/haveno/desktop/app/HavenoAppMain.java index 99cd7a17d6..ed7e956eba 100644 --- a/desktop/src/main/java/haveno/desktop/app/HavenoAppMain.java +++ b/desktop/src/main/java/haveno/desktop/app/HavenoAppMain.java @@ -216,7 +216,7 @@ public class HavenoAppMain extends HavenoExecutable { // Set the dialog content VBox vbox = new VBox(10); - vbox.getChildren().addAll(new ImageView(ImageUtil.getImageByPath("logo_splash.png")), versionField, passwordField, errorMessageField); + vbox.getChildren().addAll(new ImageView(ImageUtil.getImageByPath("logo_splash.png")), passwordField, errorMessageField, versionField); vbox.setAlignment(Pos.TOP_CENTER); getDialogPane().setContent(vbox); diff --git a/desktop/src/main/java/haveno/desktop/main/MainView.java b/desktop/src/main/java/haveno/desktop/main/MainView.java index 7d170c873b..f294eea7bf 100644 --- a/desktop/src/main/java/haveno/desktop/main/MainView.java +++ b/desktop/src/main/java/haveno/desktop/main/MainView.java @@ -511,8 +511,6 @@ public class MainView extends InitializableView { ImageView logo = new ImageView(); logo.setId(Config.baseCurrencyNetwork() == BaseCurrencyNetwork.XMR_MAINNET ? "image-splash-logo" : "image-splash-testnet-logo"); - Label versionLabel = new Label("v" + Version.VERSION); - // createBitcoinInfoBox xmrSplashInfo = new AutoTooltipLabel(); xmrSplashInfo.textProperty().bind(model.getXmrInfo()); @@ -624,7 +622,9 @@ public class MainView extends InitializableView { splashP2PNetworkBox.setPrefHeight(40); splashP2PNetworkBox.getChildren().addAll(splashP2PNetworkLabel, splashP2PNetworkBusyAnimation, splashP2PNetworkIcon, showTorNetworkSettingsButton); - vBox.getChildren().addAll(logo, versionLabel, blockchainSyncBox, xmrSyncIndicator, splashP2PNetworkBox); + Label versionLabel = new Label("v" + Version.VERSION); + + vBox.getChildren().addAll(logo, blockchainSyncBox, xmrSyncIndicator, splashP2PNetworkBox, versionLabel); return vBox; } From 69da8583652c4eee454d077ee228a66559898176 Mon Sep 17 00:00:00 2001 From: woodser Date: Tue, 14 Jan 2025 14:24:17 -0500 Subject: [PATCH 5/7] check for best connection before returning singular connection --- .../main/java/haveno/core/api/XmrConnectionService.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/haveno/core/api/XmrConnectionService.java b/core/src/main/java/haveno/core/api/XmrConnectionService.java index 640aa2b404..88d0117f8e 100644 --- a/core/src/main/java/haveno/core/api/XmrConnectionService.java +++ b/core/src/main/java/haveno/core/api/XmrConnectionService.java @@ -256,7 +256,6 @@ public final class XmrConnectionService { } public MoneroRpcConnection getBestConnection() { - accountService.checkAccountOpen(); return getBestConnection(new ArrayList()); } @@ -264,8 +263,9 @@ public final class XmrConnectionService { accountService.checkAccountOpen(); Set ignoredConnectionsSet = new HashSet<>(ignoredConnections); addLocalNodeIfIgnored(ignoredConnectionsSet); - if (connectionManager.getConnections().size() == 1 && !ignoredConnectionsSet.contains(connectionManager.getConnections().get(0))) return connectionManager.getConnections().get(0); - return connectionManager.getBestAvailableConnection(ignoredConnectionsSet.toArray(new MoneroRpcConnection[0])); + MoneroRpcConnection bestConnection = connectionManager.getBestAvailableConnection(ignoredConnectionsSet.toArray(new MoneroRpcConnection[0])); // checks connections + if (bestConnection == null && connectionManager.getConnections().size() == 1 && !ignoredConnectionsSet.contains(connectionManager.getConnections().get(0))) bestConnection = connectionManager.getConnections().get(0); + return bestConnection; } private void addLocalNodeIfIgnored(Collection ignoredConnections) { @@ -336,7 +336,7 @@ public final class XmrConnectionService { }, EXCLUDE_CONNECTION_SECONDS); // return if no connection to switch to - if (bestConnection == null) { + if (bestConnection == null || !Boolean.TRUE.equals(bestConnection.isConnected())) { log.warn("No connection to switch to"); return false; } From 97475d84e9cb15f6810da41a143471845ad298c1 Mon Sep 17 00:00:00 2001 From: woodser Date: Wed, 15 Jan 2025 09:20:52 -0500 Subject: [PATCH 6/7] use ubuntu 22.04 for all github actions --- .github/workflows/codacy-code-reporter.yml | 2 +- .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/label.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/codacy-code-reporter.yml b/.github/workflows/codacy-code-reporter.yml index 1bf5b3cec5..be76ef35ef 100644 --- a/.github/workflows/codacy-code-reporter.yml +++ b/.github/workflows/codacy-code-reporter.yml @@ -9,7 +9,7 @@ jobs: build: if: github.repository == 'haveno-dex/haveno' name: Publish coverage - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 8b8699ad69..e6498b3e16 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -18,7 +18,7 @@ on: jobs: analyze: name: Analyze - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 permissions: actions: read contents: read diff --git a/.github/workflows/label.yml b/.github/workflows/label.yml index d29b0e28eb..50ece9050c 100644 --- a/.github/workflows/label.yml +++ b/.github/workflows/label.yml @@ -7,7 +7,7 @@ on: jobs: issueLabeled: - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Bounty explanation uses: peter-evans/create-or-update-comment@v3 From 88b6bed93e16aed7663ddab960178f6045e4a8fa Mon Sep 17 00:00:00 2001 From: boldsuck Date: Wed, 15 Jan 2025 21:28:59 +0100 Subject: [PATCH 7/7] Upgrade GH workflows to remove deprecation notices (#1545) --- .github/workflows/build.yml | 21 +++++++++++---------- .github/workflows/codeql-analysis.yml | 4 ++-- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3d66321d71..8fc6b6a481 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -26,22 +26,23 @@ jobs: cache: gradle - name: Build with Gradle run: ./gradlew build --stacktrace --scan - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 if: failure() with: name: error-reports-${{ matrix.os }} path: ${{ github.workspace }}/desktop/build/reports - name: cache nodes dependencies - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: include-hidden-files: true name: cached-localnet path: .localnet + overwrite: true - name: Install dependencies if: ${{ matrix.os == 'ubuntu-22.04' }} run: | - sudo apt update - sudo apt install -y rpm libfuse2 flatpak flatpak-builder appstream + sudo apt-get update + sudo apt-get install -y rpm libfuse2 flatpak flatpak-builder appstream flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo - name: Install WiX Toolset if: ${{ matrix.os == 'windows-latest' }} @@ -99,41 +100,41 @@ jobs: shell: powershell # win - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 name: "Windows artifacts" if: ${{ matrix.os == 'windows-latest'}} with: name: haveno-windows path: ${{ github.workspace }}/release-windows # macos - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 name: "macOS artifacts" if: ${{ matrix.os == 'macos-13' }} with: name: haveno-macos path: ${{ github.workspace }}/release-macos # linux - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 name: "Linux - deb artifact" if: ${{ matrix.os == 'ubuntu-22.04' }} with: name: haveno-linux-deb path: ${{ github.workspace }}/release-linux-deb - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 name: "Linux - rpm artifact" if: ${{ matrix.os == 'ubuntu-22.04' }} with: name: haveno-linux-rpm path: ${{ github.workspace }}/release-linux-rpm - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 name: "Linux - AppImage artifact" if: ${{ matrix.os == 'ubuntu-22.04' }} with: name: haveno-linux-appimage path: ${{ github.workspace }}/release-linux-appimage - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 name: "Linux - flatpak artifact" if: ${{ matrix.os == 'ubuntu-22.04' }} with: diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index e6498b3e16..7e0fefe9e7 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -44,7 +44,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@v2 + uses: github/codeql-action/init@v3 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -68,4 +68,4 @@ jobs: run: ./gradlew build --stacktrace -x test -x checkstyleMain -x checkstyleTest - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 + uses: github/codeql-action/analyze@v3