case-folding of "ProductCode" field
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 42/100
- Tipo de issue
- Documentación
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- csharp
- Área
- api, documentation
Línea de trabajo
Comienza en el endpoint /manifestSearch de la fuente REST y rastrea cómo se comparan las solicitudes de ProductCode con MatchType Exact, utilizando los ejemplos en minúsculas y el comportamiento de la fuente oficial descrito aquí. Se considera terminado cuando el comportamiento esperado de normalización y coincidencia de ProductCode queda establecido y documentado para los implementadores de fuentes REST.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Brief description of your issue
Hi,
for implementing my own REST-source I have found the schemas and some of the code provided in this repository very helpful.
However one thing that is not clear to me is how the REST source is expected to act in regards to ProductCode normalization of the client (winget CLI).
If we look at some public and working manifests from the winget-pkgs repo, such as:
Telerik.Fiddler.Classic
Clement.bottom
we can see that they specify the ProductCode as a string containing uppercase letters. In my REST-source I ingest these exact same manifest files into my data model to be queried by winget clients.
When doing a winget list operation, the winget CLI sends a lot of API POST requests to the /manifestSearch endpoint, looking for matching packages for the ARP (add-remove-programs) entries it finds on the local computer. For the local ARP entry of the program "Fiddler", this API request carries the following body data:
{
"Inclusions": [
{
"PackageMatchField": "ProductCode"
"RequestMatch": {
"KeyWord": "fiddler2"
"MatchType": "Exact"
}
},
{
"PackageMatchField": "NormalizedPackageNameAndPublisher"
"RequestMatch": {
"KeyWord": "progresstelerikfiddler"
"MatchType": "Exact"
}
}
]
"Filters": []
}
as we can see, winget-CLI appears to lowercase the ProductCode before sending the API request, but at the same time specifies a MatchType of Exact instead of CaseInsensitive - so, in my current implementation, my REST source dutifully returns back 0 matches. I have observed the same behavior with full-on GUIDs such as the one the Clement.Bottom package uses. Winget-CLI queries for the correct GUID, but in all-lowercase with MatchType Exact - leading to no matches being found.
However, when I query the official winget source I do get matches for these programs back.
So my question is whether a REST source is expected to normalize all ProductCodes to lowercase on ingest (despite the fact that a CaseInsensitive MatchType also exists?) or whether I'm misinterpreting what I'm seeing.
If this is the case and ProductCodes are to be normalized server-side, it would be great if this could be documented.
Thank you!
- Lenguaje dominante
- C#
- Estrellas
- 317
- Forks
- 79
- Merge medio
- 8 h 42 min
- PR fusionados (30 d)
- 6
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/winget-cli-restsource
-
Add .github/copilot-instructions.mdPosiblemente ocupada @denelon la tomó hace 59 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
-
Issue-Feature
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
Font SupportQuizá libre de nuevo @dkbennett la tomó hace 287 días y no hay ningún pull request abierto. AbiertoIssue-Feature
microsoft/winget-cli-restsource#310 · 1 comentario · 1 asignado ·
-
Issue Deploying in GCC-HAbiertoIssue-Bug
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
microsoft/winget-cli-restsource#309 · 2 comentarios ·
Todos los issues de microsoft/winget-cli-restsource
Issues similares
-
subsystem: UI
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Open-Systems-Pharmacology/PK-Sim#3812 ·
Los mantenedores suelen responder en 1 día
-
[C#]:主页联网更新的提示投稿横幅指向错误Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
PCL-Community/PCL-CE#3652 ·
Los mantenedores suelen responder en 1 día
-
bug effort:S P3
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
nightscout/nocturne#2012 ·
Los mantenedores suelen responder en 1 día
-
area:frontend bug FE P3
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
klasolsson81/jobbliggaren#2010 ·
Los mantenedores suelen responder en 1 día
-
[aw] Upgrade availableAbiertoagentic-workflows untriaged
Dificultad 1/5 Menos de una hora Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día