From 5590eec19bdcec6fc26eb9e6c0ce9b08afb8cb0c Mon Sep 17 00:00:00 2001 From: koplo199 <85577251+koplo199@users.noreply.github.com> Date: Tue, 29 Aug 2023 08:32:11 +0200 Subject: [PATCH 01/10] fix: LatencyFlex (#3057) * fix: LatencyFlex * fix: correctly use native DLL overrides --- bottles/backend/wine/executor.py | 6 +++--- bottles/backend/wine/winecommand.py | 11 ++++------- com.usebottles.bottles.yml | 20 +------------------- 3 files changed, 8 insertions(+), 29 deletions(-) diff --git a/bottles/backend/wine/executor.py b/bottles/backend/wine/executor.py index 39d8ca606d..2a734eb143 100644 --- a/bottles/backend/wine/executor.py +++ b/bottles/backend/wine/executor.py @@ -65,17 +65,17 @@ def __init__( if override_dxvk is not None \ and not override_dxvk \ and self.config.Parameters.dxvk: - env_dll_overrides.append("d3d9,d3d11,d3d10core,dxgi=b") + env_dll_overrides.append("d3d9,d3d11,d3d10core,dxgi=n") if override_vkd3d is not None \ and not override_vkd3d \ and self.config.Parameters.vkd3d: - env_dll_overrides.append("d3d12=b;d3d12core=b,n") + env_dll_overrides.append("d3d12,d3d12core=n") if override_nvapi is not None \ and not override_nvapi \ and self.config.Parameters.dxvk_nvapi: - env_dll_overrides.append("nvapi,nvapi64=b") + env_dll_overrides.append("nvapi,nvapi64=n") if override_fsr is not None and override_fsr: self.environment["WINE_FULLSCREEN_FSR"] = "1" diff --git a/bottles/backend/wine/winecommand.py b/bottles/backend/wine/winecommand.py index cbe469f270..22ddcb71f0 100644 --- a/bottles/backend/wine/winecommand.py +++ b/bottles/backend/wine/winecommand.py @@ -282,15 +282,17 @@ def get_env(self, environment: Optional[dict] = None, return_steam_env: bool = F env.add("__GL_SHADER_DISK_CACHE_PATH", os.path.join(bottle, "cache", "gl_shader")) env.add("MESA_SHADER_CACHE_DIR", os.path.join(bottle, "cache", "mesa_shader")) - # VKD£D environment variables + # VKD3D environment variables if params.vkd3d and not return_steam_env: env.add("VKD3D_SHADER_CACHE_PATH", os.path.join(bottle, "cache", "vkd3d_shader")) # LatencyFleX environment variables if params.latencyflex and not return_steam_env: _lf_path = ManagerUtils.get_latencyflex_path(config.LatencyFleX) - _lf_icd = os.path.join(_lf_path, "layer/usr/share/vulkan/implicit_layer.d/latencyflex.json") + _lf_layer_path = os.path.join(_lf_path, "layer/usr/share/vulkan/implicit_layer.d") + env.concat("VK_ADD_LAYER_PATH", _lf_layer_path) env.add("LFX", "1") + ld.append(os.path.join(_lf_path, "layer/usr/lib/x86_64-linux-gnu")) else: env.add("DISABLE_LFX", "1") @@ -336,11 +338,6 @@ def get_env(self, environment: Optional[dict] = None, return_steam_env: bool = F debug_level = "+fixme-all" env.add("WINEDEBUG", debug_level) - # LatencyFleX - if params.latencyflex and params.dxvk_nvapi and not return_steam_env: - _lf_path = ManagerUtils.get_latencyflex_path(config.LatencyFleX) - ld.append(os.path.join(_lf_path, "wine/usr/lib/wine/x86_64-unix")) - # Aco compiler # if params["aco_compiler"]: # env.add("ACO_COMPILER", "aco") diff --git a/com.usebottles.bottles.yml b/com.usebottles.bottles.yml index 6f9e379ec9..51221715d8 100644 --- a/com.usebottles.bottles.yml +++ b/com.usebottles.bottles.yml @@ -86,6 +86,7 @@ cleanup: cleanup-commands: - mkdir -p /app/utils - mkdir -p /app/share/steam/compatibilitytools.d + - mkdir -p /app/share/vulkan/implicit_layer.d/ modules: # PYPI modules @@ -178,25 +179,6 @@ modules: # Libraries # ---------------------------------------------------------------------------- - - name: LatencyFleX - buildsystem: simple - build-commands: - - mkdir -p /app/lib/x86_64-linux-gnu/ - - mkdir -p /app/share/vulkan/implicit_layer.d/ - - cp layer/usr/lib/x86_64-linux-gnu/liblatencyflex_layer.so /app/lib/x86_64-linux-gnu/liblatencyflex_layer.so - - cp layer/usr/share/vulkan/implicit_layer.d/latencyflex.json /app/share/vulkan/implicit_layer.d/latencyflex.json - sources: - - type: archive - url: https://github.com/ishitatsuyuki/LatencyFleX/releases/download/v0.1.1/latencyflex-v0.1.1.tar.xz - sha256: c992ebd2f43c99ab4a84a6ffce692d9aae4cc2571536a5854ae2e79b6951e78a - x-checker-data: - type: json - is-important: true - url: https://api.github.com/repos/ishitatsuyuki/LatencyFleX/releases/latest - version-query: .tag_name - url-query: '"https://github.com/ishitatsuyuki/LatencyFleX/releases/download/" - + $version + "/latencyflex-" + $version + ".tar.xz"' - - name: ImageMagick config-opts: - --disable-static From 625558894b0c03799596338b447ed83ba095409e Mon Sep 17 00:00:00 2001 From: koplo199 <85577251+koplo199@users.noreply.github.com> Date: Thu, 24 Aug 2023 14:10:05 +0200 Subject: [PATCH 02/10] fix: Program names and empty program entry --- bottles/backend/managers/manager.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/bottles/backend/managers/manager.py b/bottles/backend/managers/manager.py index 9be2ed31af..afb191a7eb 100644 --- a/bottles/backend/managers/manager.py +++ b/bottles/backend/managers/manager.py @@ -707,7 +707,7 @@ def get_programs(self, config: BottleConfig) -> List[dict]: skip if the path contains the "Uninstall" word. ''' executable_path = LnkUtils.get_data(program) - if executable_path is None: + if executable_path in [None, ""]: continue executable_name = executable_path.split("\\")[-1] program_folder = ManagerUtils.get_exe_parent_dir(config, executable_path) @@ -727,13 +727,12 @@ def get_programs(self, config: BottleConfig) -> List[dict]: bottle, executable_path.replace("C:\\", "drive_c\\").replace("\\", "/") ) - if os.path.exists(path_check): if executable_name not in found: installed_programs.append({ "executable": executable_name, "arguments": "", - "name": executable_name.split(".")[0], + "name": executable_name.rsplit('.',1)[0], "path": executable_path, "folder": program_folder, "icon": "com.usebottles.bottles-program", From c4e800505346851e5a67185a103f560f67996b1c Mon Sep 17 00:00:00 2001 From: koplo199 <85577251+koplo199@users.noreply.github.com> Date: Thu, 24 Aug 2023 14:10:16 +0200 Subject: [PATCH 03/10] fix: Use fsync for Gaming bottles --- bottles/backend/models/samples.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bottles/backend/models/samples.py b/bottles/backend/models/samples.py index 4a114cc822..7781e61a77 100644 --- a/bottles/backend/models/samples.py +++ b/bottles/backend/models/samples.py @@ -7,7 +7,7 @@ class Samples: "dxvk": True, # "nvapi": True, "vkd3d": True, - "sync": "esync", + "sync": "fsync", "fsr": False, "discrete_gpu": True, "pulseaudio_latency": False From 16af9e34a97a6accab79baaa9843365cb2d6be3a Mon Sep 17 00:00:00 2001 From: koplo199 <85577251+koplo199@users.noreply.github.com> Date: Thu, 24 Aug 2023 14:10:23 +0200 Subject: [PATCH 04/10] feat: Allow setting environment variable value directly --- bottles/frontend/windows/envvars.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/bottles/frontend/windows/envvars.py b/bottles/frontend/windows/envvars.py index 64d30badab..3ec5d6c656 100644 --- a/bottles/frontend/windows/envvars.py +++ b/bottles/frontend/windows/envvars.py @@ -110,13 +110,18 @@ def __save_var(self, *_args): return env_name = self.entry_name.get_text() + env_value = "value" + split_value = env_name.rsplit('=', 1) + if len(split_value) == 2: + env_name = split_value[0] + env_value = split_value[1] self.manager.update_config( config=self.config, key=env_name, - value="value", + value=env_value, scope="Environment_Variables" ) - _entry = EnvVarEntry(parent=self, env=[env_name, "value"]) + _entry = EnvVarEntry(parent=self, env=[env_name, env_value]) GLib.idle_add(self.group_vars.add, _entry) self.entry_name.set_text("") From 911b583b5c2a913debed04c2a7a4add9e4163e97 Mon Sep 17 00:00:00 2001 From: koplo199 <85577251+koplo199@users.noreply.github.com> Date: Tue, 29 Aug 2023 11:02:58 +0200 Subject: [PATCH 05/10] fix: SonarQube being bitchy about cognitive load --- sonar-project.properties | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sonar-project.properties b/sonar-project.properties index 681993a3ae..06b39e8b4d 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -4,6 +4,12 @@ sonar.projectName=Bottles sonar.sources=. sonar.python.version=3 +sonar.issue.ignore.multicriteria=p1 + +# Resolve: "Cognitive Complexity of functions should not be too high" +sonar.issue.ignore.multicriteria.p1.ruleKey=python:S3776 +sonar.issue.ignore.multicriteria.p1.resourceKey=**/*.py + sonar.c.file.suffixes=- sonar.cpp.file.suffixes=- sonar.objc.file.suffixes=- From 5627b5b7cc5ad2666391daf5db0c8a707af14c7f Mon Sep 17 00:00:00 2001 From: koplo199 <85577251+koplo199@users.noreply.github.com> Date: Tue, 29 Aug 2023 15:12:28 +0200 Subject: [PATCH 06/10] fix: Duplicated NVIDIA GPUs --- bottles/backend/utils/vulkan.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/bottles/backend/utils/vulkan.py b/bottles/backend/utils/vulkan.py index eb9b566734..60dc96f56c 100644 --- a/bottles/backend/utils/vulkan.py +++ b/bottles/backend/utils/vulkan.py @@ -19,6 +19,7 @@ from glob import glob import shutil import subprocess +import filecmp class VulkanUtils: @@ -49,7 +50,14 @@ def __get_vk_icd_loaders(self): for file in _files: if "nvidia" in file.lower(): - loaders["nvidia"] += [file] + # Workaround for nvidia flatpak bug: https://github.com/flathub/org.freedesktop.Platform.GL.nvidia/issues/112 + should_skip=False + for nvidia_loader in loaders["nvidia"]: + if filecmp.cmp(nvidia_loader, file): + should_skip=True + continue + if not should_skip: + loaders["nvidia"] += [file] elif "amd" in file.lower() or "radeon" in file.lower(): loaders["amd"] += [file] elif "intel" in file.lower(): From c2c323706b620fe696d3f27ffa700a8e4d06fe10 Mon Sep 17 00:00:00 2001 From: EliasOfWaffle <128154816+EliasOfWaffle@users.noreply.github.com> Date: Tue, 29 Aug 2023 18:08:12 -0300 Subject: [PATCH 07/10] Use some dependencies in samples (#2900) Install mono, gecko and faudio for default in game environment. Install mono and gecko for default in application environment . Co-authored-by: Dallas Strouse <93224879+orowith2os@users.noreply.github.com> --- bottles/backend/models/samples.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/bottles/backend/models/samples.py b/bottles/backend/models/samples.py index 7781e61a77..21b3a2d85b 100644 --- a/bottles/backend/models/samples.py +++ b/bottles/backend/models/samples.py @@ -19,7 +19,10 @@ class Samples: "times32", "courie32", "d3dcompiler_43", - "d3dcompiler_47" + "d3dcompiler_47", + "mono", + "gecko", + "faudio", ] }, "application": { @@ -33,9 +36,10 @@ class Samples: "arial32", "times32", "courie32", - # "mono", - # "dotnet40", - # "dotnet48" + "mono", + "gecko" + # "dotnet40", + # "dotnet48" ] } } From bbb6735780a98a56ed9d4b055e95ce98df7cf6f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BD=97=E6=99=BA=E8=8A=83?= Date: Fri, 1 Sep 2023 23:02:20 +0800 Subject: [PATCH 08/10] fixed steam runtime path in WineCommand:get_cmd (#3066) fixed steam runtime path in get_cmd --- bottles/backend/wine/winecommand.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bottles/backend/wine/winecommand.py b/bottles/backend/wine/winecommand.py index 22ddcb71f0..754c7553a1 100644 --- a/bottles/backend/wine/winecommand.py +++ b/bottles/backend/wine/winecommand.py @@ -508,7 +508,7 @@ def get_cmd( Sniper is the default runtime used by Proton version >= 8.0 ''' _picked = _rs["sniper"] - if "soldier" in _rs.keys() and "soldier" in self.runner_runtime: + elif "soldier" in _rs.keys() and "soldier" in self.runner_runtime: ''' Sniper is the default runtime used by Proton version >= 5.13 and < 8.0 ''' From 44b06047c87af2ed3620c3fa8dcd10a63227b247 Mon Sep 17 00:00:00 2001 From: koplo199 <85577251+koplo199@users.noreply.github.com> Date: Sat, 2 Sep 2023 04:03:21 +0200 Subject: [PATCH 09/10] fix: Do not show success with failed dependencies install (#3062) * fix: Do not show success with failed dependencies install and do not override mshtml * fix: Return bool instead of Result for create_bottle_from_config() --- bottles/backend/managers/dependency.py | 2 +- bottles/backend/managers/manager.py | 14 ++++++++++---- bottles/backend/repos/repo.py | 5 +++-- bottles/backend/wine/winecommand.py | 2 -- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/bottles/backend/managers/dependency.py b/bottles/backend/managers/dependency.py index 75fec6e653..6440cacb24 100644 --- a/bottles/backend/managers/dependency.py +++ b/bottles/backend/managers/dependency.py @@ -51,7 +51,7 @@ def __init__(self, manager, offline: bool = False): self.__utils_conn = manager.utils_conn @lru_cache - def get_dependency(self, name: str, plain: bool = False) -> Union[str, dict]: + def get_dependency(self, name: str, plain: bool = False) -> Union[str, dict, bool]: return self.__repo.get(name, plain) @lru_cache diff --git a/bottles/backend/managers/manager.py b/bottles/backend/managers/manager.py index afb191a7eb..a7f6a9c5ce 100644 --- a/bottles/backend/managers/manager.py +++ b/bottles/backend/managers/manager.py @@ -1063,8 +1063,10 @@ def create_bottle_from_config(self, config: BottleConfig) -> bool: ''' if dependency in self.supported_dependencies.keys(): dep = [dependency, self.supported_dependencies[dependency]] - self.dependency_manager.install(config, dep) - + res = self.dependency_manager.install(config, dep) + if not res.ok: + logging.error(_("Failed to install dependency: %s") % dep.get("Description", "n/a"), jn=True) + return False logging.info(f"New bottle from config created: {config.Path}") self.update_bottles(silent=True) return True @@ -1314,7 +1316,7 @@ def components_check(): # blacklisting processes logging.info("Optimizing environment…") log_update(_("Optimizing environment…")) - _blacklist_dll = ["winemenubuilder.exe", "mshtml"] # avoid gecko, mono popups + _blacklist_dll = ["winemenubuilder.exe"] for _dll in _blacklist_dll: reg.add( key="HKEY_CURRENT_USER\\Software\\Wine\\DllOverrides", @@ -1381,7 +1383,11 @@ def components_check(): if dep in self.supported_dependencies: _dep = self.supported_dependencies[dep] log_update(_("Installing dependency: %s …") % _dep.get("Description", "n/a")) - self.dependency_manager.install(config, [dep, _dep]) + res = self.dependency_manager.install(config, [dep, _dep]) + if not res.ok: + logging.error(_("Failed to install dependency: %s") % _dep.get("Description", "n/a"), jn=True) + log_update(_("Failed to install dependency: %s") % _dep.get("Description", "n/a")) + return Result(False) template_updated = True # save bottle config diff --git a/bottles/backend/repos/repo.py b/bottles/backend/repos/repo.py index c6edf5077c..5f7b4689a7 100644 --- a/bottles/backend/repos/repo.py +++ b/bottles/backend/repos/repo.py @@ -16,6 +16,7 @@ # from io import BytesIO +from typing import Union import pycurl @@ -62,7 +63,7 @@ def __get_catalog(self, index: str, offline: bool = False): logging.error(f"Cannot fetch {self.name} repository index.") return {} - def get_manifest(self, url: str, plain: bool = False): + def get_manifest(self, url: str, plain: bool = False) -> Union[str, dict, bool]: try: buffer = BytesIO() @@ -81,4 +82,4 @@ def get_manifest(self, url: str, plain: bool = False): return yaml.load(res) except (pycurl.error, yaml.YAMLError): logging.error(f"Cannot fetch {self.name} manifest.") - return {} + return False diff --git a/bottles/backend/wine/winecommand.py b/bottles/backend/wine/winecommand.py index 754c7553a1..bdad95d628 100644 --- a/bottles/backend/wine/winecommand.py +++ b/bottles/backend/wine/winecommand.py @@ -201,8 +201,6 @@ def get_env(self, environment: Optional[dict] = None, return_steam_env: bool = F # Default DLL overrides if not return_steam_env: - if all(not s.startswith("mshtml=") for s in dll_overrides): - dll_overrides.append("mshtml=d") dll_overrides.append("winemenubuilder=''") # Get Runtime libraries From ec424cbda73e9df327abc1701d1178d04c2a7da2 Mon Sep 17 00:00:00 2001 From: koplo199 <85577251+koplo199@users.noreply.github.com> Date: Wed, 6 Sep 2023 03:41:49 +0200 Subject: [PATCH 10/10] automation: Use dependabot to update actions (#3072) * Create dependabot.yml * build(deps): bump actions/checkout from 3 to 4 (#14) Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * build(deps): bump peter-evans/close-issue from 2 to 3 (#15) Bumps [peter-evans/close-issue](https://github.com/peter-evans/close-issue) from 2 to 3. - [Release notes](https://github.com/peter-evans/close-issue/releases) - [Commits](https://github.com/peter-evans/close-issue/compare/v2...v3) --- updated-dependencies: - dependency-name: peter-evans/close-issue dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * build(deps): bump actions/github-script from 3.1.0 to 6.4.1 (#13) Bumps [actions/github-script](https://github.com/actions/github-script) from 3.1.0 to 6.4.1. - [Release notes](https://github.com/actions/github-script/releases) - [Commits](https://github.com/actions/github-script/compare/v3.1.0...v6.4.1) --- updated-dependencies: - dependency-name: actions/github-script dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Update pylint-commenter.yml * Update pylint-commenter.yml --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/dependabot.yml | 11 +++++++++++ .github/workflows/build_flatpak.yml | 2 +- .github/workflows/close-issues.yml | 2 +- .github/workflows/mypy.yml | 2 +- .github/workflows/pylint-checker.yml | 2 +- .github/workflows/pylint-commenter.yml | 6 +++--- .github/workflows/pytest.yml | 2 +- .github/workflows/sonar.yml | 2 +- .github/workflows/update-manifest.yml | 2 +- 9 files changed, 21 insertions(+), 10 deletions(-) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000000..5782d094d4 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: +- package-ecosystem: github-actions + directory: "/" + schedule: + interval: daily diff --git a/.github/workflows/build_flatpak.yml b/.github/workflows/build_flatpak.yml index 75109df3af..78c93f2e70 100644 --- a/.github/workflows/build_flatpak.yml +++ b/.github/workflows/build_flatpak.yml @@ -11,7 +11,7 @@ jobs: image: bilelmoussaoui/flatpak-github-actions:gnome-44 options: --privileged steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: bilelmoussaoui/flatpak-github-actions/flatpak-builder@v6 with: bundle: bottles.flatpak diff --git a/.github/workflows/close-issues.yml b/.github/workflows/close-issues.yml index aba138f5a1..3579372ee4 100644 --- a/.github/workflows/close-issues.yml +++ b/.github/workflows/close-issues.yml @@ -15,7 +15,7 @@ jobs: regex: '[Vv]ersion.*:.*202\d.\d\d?.\d\d?' - if: ${{ steps.regex-match.outputs.match != '' }} name: Close Issue - uses: peter-evans/close-issue@v2 + uses: peter-evans/close-issue@v3 with: close-reason: not_planned comment: | diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index 46a9b2f5ff..24e3ac55ed 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -8,7 +8,7 @@ jobs: name: Checker runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Set up Python 3.10 diff --git a/.github/workflows/pylint-checker.yml b/.github/workflows/pylint-checker.yml index a1495d0a0b..8ac323ad61 100644 --- a/.github/workflows/pylint-checker.yml +++ b/.github/workflows/pylint-checker.yml @@ -5,7 +5,7 @@ jobs: pylint-checker: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Set up Python 3.10 diff --git a/.github/workflows/pylint-commenter.yml b/.github/workflows/pylint-commenter.yml index 4a1ebe308c..aab56cecd4 100644 --- a/.github/workflows/pylint-commenter.yml +++ b/.github/workflows/pylint-commenter.yml @@ -16,10 +16,10 @@ jobs: github.event.workflow_run.conclusion == 'success' steps: - name: 'Download artifact' - uses: actions/github-script@v3.1.0 + uses: actions/github-script@v6.4.1 with: script: | - var artifacts = await github.actions.listWorkflowRunArtifacts({ + var artifacts = await github.rest.actions.listWorkflowRunArtifacts ({ owner: context.repo.owner, repo: context.repo.repo, run_id: ${{github.event.workflow_run.id }}, @@ -27,7 +27,7 @@ jobs: var matchArtifact = artifacts.data.artifacts.filter((artifact) => { return artifact.name == "pylint-result" })[0]; - var download = await github.actions.downloadArtifact({ + var download = await github.rest.actions.downloadArtifact({ owner: context.repo.owner, repo: context.repo.repo, artifact_id: matchArtifact.id, diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml index 697a393747..89c61e8c44 100644 --- a/.github/workflows/pytest.yml +++ b/.github/workflows/pytest.yml @@ -7,7 +7,7 @@ jobs: pytest-testing: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v4 with: diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml index dfdf9b4007..e16ff49a24 100644 --- a/.github/workflows/sonar.yml +++ b/.github/workflows/sonar.yml @@ -8,7 +8,7 @@ jobs: name: Checker runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: ref: ${{ github.event.pull_request.head.sha }} fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis diff --git a/.github/workflows/update-manifest.yml b/.github/workflows/update-manifest.yml index 9cc508e71b..f3aceaac90 100644 --- a/.github/workflows/update-manifest.yml +++ b/.github/workflows/update-manifest.yml @@ -15,7 +15,7 @@ jobs: update-manifest: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: path: "bottles-repository" ref: ${{ github.ref_name }}