[Feature]: Surface `--output`, `--valid-days` and `--export-cer` in `winapp cert generate`
Los mantenedores suelen responder en 8 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 55/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- typescript, vscode
- Área
- cli, developer-experience
Línea de trabajo
Comienza con el comando winapp.certGenerate existente y su generate QuickPick; después, revisa cómo se gestionan actualmente la configuración de la extensión y workspaceState. Revisa el cambio de transporte de cert generate que está en curso antes de añadir estas opciones, y comprueba scripts/download-cli.ps1 para conocer el contexto de la versión de CLI. Se considera terminado cuando las tres opciones de CLI están disponibles de forma predeterminada sin prompts, mediante el flujo avanzado propuesto, y sus valores persisten según lo especificado.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Is your feature request related to a problem? Please describe.
winapp.certGenerate runs cert generate (or cert generate --install) with no other arguments, so several winappcli options are unreachable from the extension:
--output— where the PFX is written. Users are stuck withdevcert.pfxin the project directory and cannot put certificates in, say, acerts/orbuild/folder.--valid-days— certificate validity period. Users are stuck with the CLI default of 365 days and cannot shorten it for a short-lived test certificate or lengthen it to avoid re-trusting a dev certificate every year.--export-cer— emit a.cer(public key only) alongside the.pfx. The.ceris the artifact you hand to a colleague or a test machine in order to trust the certificate, so not being able to ask for one is a real gap for anyone sharing a dev certificate across machines.
Background: the extension's command surface was designed against winappcli ~0.3.1, while scripts/download-cli.ps1 downloads latest (now 0.6.x). The result is a 0.6.x CLI shipping behind a 0.3.x UI, with these options present in the bundled binary but not surfaced anywhere.
These were deliberately split out of the in-flight cert generate work so that change can stay focused on correctness (publisher/manifest matching, and making failures visible in VS Code at all) rather than growing a configuration surface at the same time.
Describe the solution you'd like
Expose the three options without turning a two-click command into a multi-prompt interrogation. The design sketched during the cert generate review, for whoever picks this up:
- Settings for values a user sets once per project and then never wants to be asked about again:
winapp.cert.outputPath(default""⇒ CLI defaultdevcert.pfxin the project directory)winapp.cert.validDays(default365, matching the CLI)winapp.cert.exportCer(default worth discussing — see note below)
- An "Advanced options…" entry appended to the existing generate QuickPick, opening a single
canPickManychecklist (Custom output path,Custom validity period,Export .cer alongside .pfx,Override publisher) that then prompts only for the rows the user ticked, with answers recalled fromworkspaceStatefor the next run.
The point of the two-tier shape is that the default path gains zero prompts, one extra click reaches the full surface, and the user only answers as many questions as they explicitly asked for.
Note on --export-cer: consider defaulting it on. The .cer costs nothing to produce, contains no secret, and is what you hand to someone else to trust. It is also what allows "generate and install" to elevate only cert install <the .cer> instead of the .pfx — installing the .pfx imports the private key into the machine store, which is more privilege than trusting the certificate requires.
Additional context
Related work and issues:
- The in-flight
cert generatechange covers--manifest/--publisher(so the certificate's publisher matches the manifest) and--if-exists, and moves the command off the fire-and-forget terminal transport ontospawn+--jsonso exit codes and errors are actually visible. That transport change is a prerequisite for anything here that needs to read back the generated paths. - #242 tracks
--passwordsupport across thecertcommands. - The underlying version drift is worth addressing on its own:
scripts/download-cli.ps1defaults tolatest, so the UI silently falls further behind each CLI release. Pinning the downloaded version, or asserting a minimum version at activation using the CLI's--cli-schemaself-description, would stop this recurring.
- Lenguaje dominante
- TypeScript
- Estrellas
- 14
- Forks
- 4
- Merge medio
- 7 d 28 min
- PR fusionados (30 d)
- 10
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de microsoft/WinAppVSCE
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
microsoft/WinAppVSCE#320 ·
Los mantenedores suelen responder en 8 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
microsoft/WinAppVSCE#262 ·
Los mantenedores suelen responder en 8 días
-
[Feature]: Update WinUI templates to include launch.json + VSCE RecommendationPosiblemente ocupada @chiaramooney la tomó hace 9 días. Abiertoenhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
microsoft/WinAppVSCE#219 · 1 asignado ·
Los mantenedores suelen responder en 8 días
-
documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
microsoft/WinAppVSCE#160 ·
Los mantenedores suelen responder en 8 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
microsoft/WinAppVSCE#159 ·
Los mantenedores suelen responder en 8 días
Todos los issues de microsoft/WinAppVSCE
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
outline/outline#14348 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug needs-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
[Bug]: Agent import retains quotes in .env API keys followed by inline commentsPosiblemente ocupada @yxr-2025 la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
elie222/rakazo#2322 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
awslabs/visual-asset-management-system#804 ·
Los mantenedores suelen responder en 1 día
-
用户目录有单引号时,热加载时YAML解析崩溃Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
dsh-market/dsh-market#1027 · 1 comentario ·
Los mantenedores suelen responder en 1 día