From bdec143dcd0a820239644629a951199153b51fbb Mon Sep 17 00:00:00 2001 From: DjLegolas Date: Sat, 31 Aug 2024 18:11:16 +0300 Subject: [PATCH] Remove buggy functionality from list command In the `list` command, both the `latest` and `outdated` options were buggy and were causing an exception. This is the same as the `outdated` command, so use it instead. --- gvsbuild/list.py | 76 +----------------------------------------------- 1 file changed, 1 insertion(+), 75 deletions(-) diff --git a/gvsbuild/list.py b/gvsbuild/list.py index 6205c92c8..8261dd4d8 100644 --- a/gvsbuild/list.py +++ b/gvsbuild/list.py @@ -14,50 +14,13 @@ # along with this program; if not, see . import json -import sys from typing import List import typer -from packaging import version from gvsbuild.utils.base_project import Project, ProjectType -def set_projects_latest_versions(projects): - try: - import lastversion - except ImportError: - print("Please pip install lastversion in your Python environment") - sys.exit(1) - - projects = { - project.name: project - for project in Project.list_projects() - if project.type.value in [ProjectType.PROJECT, ProjectType.TOOL] - and not project.internal - } - - try: - for project in projects.values(): - if project.internal: - continue - project.latest_version = lastversion.latest( - repo=project.repository or project.name, - major=project.lastversion_major, - ) - if project.latest_version: - project.outdated = version.parse( - str(project.latest_version) - ) > version.parse(project.version) - - except lastversion.exceptions.ApiCredentialsError: - print( - "Create or update the GITHUB token at https://github.com/settings/tokens, then set or update the token " - "environmental variable with:\n$env:GITHUB_API_TOKEN=xxxxxxxxxxxxxxx" - ) - exit(1) - - def list_( projects_names: List[str] = typer.Argument(None, help="The projects to list"), project_type: ProjectType = typer.Option( @@ -78,18 +41,6 @@ def list_( help="Show list in JSON format", rich_help_panel="Formatting Options", ), - latest: bool = typer.Option( - False, - "--latest", - help="Fetch latest information", - rich_help_panel="Formatting Options", - ), - outdated: bool = typer.Option( - False, - "--outdated", - help="Only show outdated projects", - rich_help_panel="Selection Options", - ), ): Project.add_all() @@ -103,19 +54,6 @@ def list_( project for project in projects if project.type.value == project_type ] - if outdated: - latest = True - - if latest: - set_projects_latest_versions(projects) - - if outdated: - projects = [ - project - for project in projects - if hasattr(project, "outdated") and project.outdated - ] - if json_: def _get_project_data(project): @@ -145,16 +83,4 @@ def _get_project_data(project): "name": f"{project.name:<{Project.name_len}}", "version": f"{project.version:<45}", } - if latest: - if ( - hasattr(project, "latest_version") - and project.latest_version - ): - params["latest_version"] = ( - f"{str(project.latest_version):<45}" - ) - else: - params["latest_version"] = "undefined" - print("\t{name} {version} {latest_version}".format(**params)) - else: - print("\t{name} {version}".format(**params)) + print("\t{name} {version}".format(**params))