Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Discussion: interactive vs non-interactive disc/release selection #167

Open
Freso opened this issue Jun 9, 2017 · 5 comments
Open

Discussion: interactive vs non-interactive disc/release selection #167

Freso opened this issue Jun 9, 2017 · 5 comments
Labels
Accepted Accepted issue on our roadmap Needed: discussion More discussion needed before anything can be done (or still no agreement has been reached) Stretch Optional goal for the current sprint (may not be delivered) Support Questions that needs answering with no code changes needed or that only require a one time change
Milestone

Comments

@Freso
Copy link
Member

Freso commented Jun 9, 2017

While morituri strived to be fully automated and not provide any interactivity what-so-ever. (At most, you could specify things on the command line when invoking morituri.) However, this approach also means that sometimes you're likely to get the wrong metadata, e.g., for multiple releases with the same Disc ID, or even for a single release with multiple discs having the same Disc ID.

I would suggest adding a minimum level of interactivity by default. If a Disc ID resolves to multiple discs (on multiple releases or a single release), it should ask how to proceed (e.g., give an option of the matched mediums and ask user to select one (and maybe possible to open the "Add release from Disc ID" page)). Possibly with a timeout (e.g., if no response in 60 seconds, bail out).

Another option could be to instantly balk when it can't resolve a Disc ID to a release (unless an --interactive flag was used?), letting the user know how to select which release to use in the next invocation (using the --release-id option, possibly with a new --medium option or something, depending on #166).

But ultimately, I guess it depends on how @JoeLametta, @RecursiveForest, @MerlijnWajer et al sees whipper's mission compared to morituri's. Do we want to do more or less exactly the same (in which case the instantly balking is more correct), or can we diverge a little from morituri's mission (in which case we can at least consider adding a slight bit of default occasional interactivity)?

@Hoolean
Copy link

Hoolean commented Aug 1, 2017

I would much appreciate such a feature. Failing this, as a temporary fix, how are people retagging their files with the correct release (including renaming etc, if done)?

@JoeLametta JoeLametta added the Support Questions that needs answering with no code changes needed or that only require a one time change label Mar 8, 2018
@MerlijnWajer
Copy link
Collaborator

Sounds like a good feature to have, but we should be careful not to overboard too much - how would you diff the releases? Just show all releases in links, or do you want to diff them? etc

@JoeLametta JoeLametta added this to the 2.0 milestone Nov 3, 2018
@Freso
Copy link
Member Author

Freso commented Mar 9, 2019

I've thought some more on this, and I currently think we should default to allow some level of interactivity, but also have a flag (--unattended or --non-interactive or some such (what's usually used?)) to make whipper err out if it encounters anything that requires user input/confirmation.

I also think this flag should be in place for whipper 1.0.0 if this is what we go for, to limit breaking scripts etc. that may rely on whipper's behaviour of interactivity (or no). (I know SemWeb prescribes that it's okay to break API between major versions, but that doesn't mean we have to do so more than we have to. :))

@Freso Freso added the Needed: discussion More discussion needed before anything can be done (or still no agreement has been reached) label Mar 9, 2019
@MerlijnWajer
Copy link
Collaborator

We could also print a message on warnings like these and tell the user to pass --interactive to resolve the situation. I'm fine with both.

@JoeLametta JoeLametta modified the milestones: 2.0, 1.0 Mar 16, 2019
@JoeLametta
Copy link
Collaborator

@Freso, @MerlijnWajer I agree with both your proposals.

@JoeLametta JoeLametta added the Accepted Accepted issue on our roadmap label Mar 18, 2019
@JoeLametta JoeLametta added the Stretch Optional goal for the current sprint (may not be delivered) label Sep 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Accepted Accepted issue on our roadmap Needed: discussion More discussion needed before anything can be done (or still no agreement has been reached) Stretch Optional goal for the current sprint (may not be delivered) Support Questions that needs answering with no code changes needed or that only require a one time change
Projects
None yet
Development

No branches or pull requests

4 participants