chocolatey / chocolatey/choco

Potentially switch from remembering arguments to remembering configuration

Open
#3,005 0 comments 0 reactions 0 assignees View on GitHub
Enhancement
Dominant language
C#
Stars
11.5k
Forks
961
PR merge metrics
No merged PRs in 30d

Description

### Checklist

- [X] I have verified this is the correct repository for opening this issue.
- [X] I have verified no other issues exist related to my request.

### Is Your Feature Request Related To A Problem? Please describe.

There have been a number of issues around remembered arguments (#1443, #2111, #2752, #2886, #2761), which largely have been around how the remembered argument are saved, specifically with how they have to be parsed back into the configuration.

### Describe The Solution. Why is it needed?

So it might be a good idea to not save command line arguments, but instead serialize an object to a file. So for example an xml file with the package parameters, install arguments, etc as elements. This allows for more flexibility in parsing the file later, and more options for mapping the resulting object to the current configuration. It also avoids having to go through a command line argument parser.

### Additional Context

I have a prototype of how this might work here: https://github.com/TheCakeIsNaOH/choco/tree/remembered-args-xml
The implementation has similarities to the changes in #3003

### Related Issues

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by reading the remembered-arguments issues (#1443, #2111, #2752, #2886, and #2761), then compare the proposal with the changes in #3003 and the prototype branch linked in this issue. Done would require an agreed design and implementation for serializing configuration instead of command-line arguments, but this issue does not identify files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.