Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[Feature Request] Add `xtool update` command for automatic CLI updates

Abierto
#365 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
github, swift
Área
cli, devtools

Línea de trabajo

Start by reading the CLI command definitions and release packaging workflow to see how xtool exposes commands and names downloadable binaries; those entry points are not identified in the issue. Then assess version lookup, platform and architecture selection, checksum verification, and safe executable replacement. Done means xtool update installs the latest stable release and --check reports availability without installing, with failures handled safely.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement

Feature Request

Description

It would be great to have a built-in xtool update command that allows users to update xtool directly from the CLI without manually downloading and replacing the executable.

Currently, updating a manually installed version can require visiting GitHub Releases, downloading the correct binary for the system architecture, and replacing the existing installation.

A built-in updater would make this process much easier, especially for Linux and WSL users.

Proposed Solution

Add the following commands:

xtool update

Automatically check for the latest stable release and install it if a newer version is available.

xtool update --check

Check whether a newer version is available without installing it.

Expected Behavior
  1. Detect the currently installed xtool version.
  2. Fetch the latest release information from GitHub.
  3. Compare the installed version with the latest release.
  4. Detect the user's operating system and architecture.
  5. Download the appropriate release binary.
  6. Verify the downloaded binary's integrity when checksums are available.
  7. Safely replace the existing executable.
  8. Display a success message with the updated version.

Example output:

$ xtool update

Checking for updates...
Current version: 1.x.x
Latest version: 1.y.y

Downloading update...
Verifying download...
Installing update...

Successfully updated xtool to 1.y.y!
Additional Suggestions
  • Support Linux, macOS, and Windows/WSL where applicable.
  • Provide --force to reinstall the current version.
  • Support --pre-release for users who want to try beta versions.
  • Detect package-manager installations and direct users to the appropriate update method.
  • Handle permission errors gracefully.
  • Preserve existing configuration, authentication, and SDK files.
  • Avoid leaving a broken installation if downloading or replacing the binary fails.
Motivation

This would improve the developer experience and make keeping xtool up to date much more convenient, particularly for users who install it manually or use it inside WSL.

Thanks for considering this feature and for your work on xtool!

Lenguaje dominante
Swift
Estrellas
5.5k
Forks
163
Merge medio
19 h 33 min
PR fusionados (30 d)
25

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de xtool-org/xtool

Todos los issues de xtool-org/xtool

Issues similares

Más issues de Swift

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.