{"action":"created","issue":{"url":"https://api.github.com/repos/KSP-CKAN/CKAN/issues/1173","labels_url":"https://api.github.com/repos/KSP-CKAN/CKAN/issues/1173/labels{/name}","comments_url":"https://api.github.com/repos/KSP-CKAN/CKAN/issues/1173/comments","events_url":"https://api.github.com/repos/KSP-CKAN/CKAN/issues/1173/events","html_url":"https://github.com/KSP-CKAN/CKAN/issues/1173","id":90746051,"number":1173,"title":"How do we sensibly handle \"forced\" installs?","user":{"login":"Murdabenne","id":12688578,"avatar_url":"https://avatars.githubusercontent.com/u/12688578?v=3","gravatar_id":"","url":"https://api.github.com/users/Murdabenne","html_url":"https://github.com/Murdabenne","followers_url":"https://api.github.com/users/Murdabenne/followers","following_url":"https://api.github.com/users/Murdabenne/following{/other_user}","gists_url":"https://api.github.com/users/Murdabenne/gists{/gist_id}","starred_url":"https://api.github.com/users/Murdabenne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Murdabenne/subscriptions","organizations_url":"https://api.github.com/users/Murdabenne/orgs","repos_url":"https://api.github.com/users/Murdabenne/repos","events_url":"https://api.github.com/users/Murdabenne/events{/privacy}","received_events_url":"https://api.github.com/users/Murdabenne/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/KSP-CKAN/CKAN/labels/spec","name":"spec","color":"fbca04"},{"url":"https://api.github.com/repos/KSP-CKAN/CKAN/labels/%E2%98%85%E2%98%85%E2%98%86","name":"★★☆","color":"009800"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/KSP-CKAN/CKAN/milestones/5","html_url":"https://github.com/KSP-CKAN/CKAN/milestones/Fuzzy%20versioning","labels_url":"https://api.github.com/repos/KSP-CKAN/CKAN/milestones/5/labels","id":1181990,"number":5,"title":"Fuzzy versioning","description":"We've entered an age where KSP point releases *don't* necessarily break existing mods. This milestone contains tickets which help us exist in that beautiful land.","creator":{"login":"pjf","id":12072,"avatar_url":"https://avatars.githubusercontent.com/u/12072?v=3","gravatar_id":"","url":"https://api.github.com/users/pjf","html_url":"https://github.com/pjf","followers_url":"https://api.github.com/users/pjf/followers","following_url":"https://api.github.com/users/pjf/following{/other_user}","gists_url":"https://api.github.com/users/pjf/gists{/gist_id}","starred_url":"https://api.github.com/users/pjf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pjf/subscriptions","organizations_url":"https://api.github.com/users/pjf/orgs","repos_url":"https://api.github.com/users/pjf/repos","events_url":"https://api.github.com/users/pjf/events{/privacy}","received_events_url":"https://api.github.com/users/pjf/received_events","type":"User","site_admin":false},"open_issues":4,"closed_issues":1,"state":"open","created_at":"2015-06-26T02:53:17Z","updated_at":"2015-06-27T02:57:18Z","due_on":null,"closed_at":null},"comments":15,"created_at":"2015-06-24T18:01:10Z","updated_at":"2015-06-27T17:42:34Z","closed_at":null,"body":"There is no straightforward way to do this.  Currently you have to specify the version and do this from the command line.   When you have 35+ apps that have yet to have their metadata updated, this is pretty tedious business, having to first go into the metadata to find what exact version info you need, then to individually install each of these.  It pretty much defeats the purpose of having this tool.\r\n\r\nThe GUI app already has the latest version and the KSP version available to it, so it can handle this if given an override. Here is how I propose to make it work:\r\n\r\n1. Go to Options, have a checkbox or button there that says \"Allow Forced Install\". Click it. \r\n1a. A popup appears explaining the dangers, etc. And a warning that this is a temporary setting, and will not persist between CKAN runs.  OK/Cancel are the only options \r\n2. Got to filters, select incompatible.\r\n2a.The list changes to show the same thing it does now, except they have checkboxes. This is the ONLY filter that will allow the option to make checkboxes, and conversely the only time you will ever see checkboxes on the incompatibles screen.\r\n3. Proceed as usual for installs, overriding the version checks, simply grabbing the latest version available.\r\n4. Forced Installs show in the list as \"F\" (like \"AD\") and cannot be manipulated by CKAN other than being uninstalled.\r\n\r\nMaking the setting it non-persistent prevents someone from accidentally screwing up by leaving it on the incompatibles screen and mistakenly thinking they were on the normal screen.  it is a safety measure.\r\n\r\nThis will help users when we get a bugfix (x.x.BUGFIX) KSP release and authors that have a tonne of apps arent able or are unwilling to update the KSP version, or (the most likely case) they simply haven't gotten around to it but the app works and the users want it.\r\n\r\nThis issue dovetails somewhat with the version checking issue - that might provide a way for stricter version checking to prevent outdated installs, while this would provide users the ability to override that.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/KSP-CKAN/CKAN/issues/comments/116107734","html_url":"https://github.com/KSP-CKAN/CKAN/issues/1173#issuecomment-116107734","issue_url":"https://api.github.com/repos/KSP-CKAN/CKAN/issues/1173","id":116107734,"user":{"login":"Hexicube","id":1197472,"avatar_url":"https://avatars.githubusercontent.com/u/1197472?v=3","gravatar_id":"","url":"https://api.github.com/users/Hexicube","html_url":"https://github.com/Hexicube","followers_url":"https://api.github.com/users/Hexicube/followers","following_url":"https://api.github.com/users/Hexicube/following{/other_user}","gists_url":"https://api.github.com/users/Hexicube/gists{/gist_id}","starred_url":"https://api.github.com/users/Hexicube/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Hexicube/subscriptions","organizations_url":"https://api.github.com/users/Hexicube/orgs","repos_url":"https://api.github.com/users/Hexicube/repos","events_url":"https://api.github.com/users/Hexicube/events{/privacy}","received_events_url":"https://api.github.com/users/Hexicube/received_events","type":"User","site_admin":false},"created_at":"2015-06-27T17:42:34Z","updated_at":"2015-06-27T17:42:34Z","body":"One thing I didn't really see pointed out: If you have a more relaxed version check (say, allow all 1.0 mods) that would flag mods as potentially an issue (such as the background tinting for YOYO mode), it should still check if that mod would have actually been listed in a stricter mode that would not require such a thing, and apply the warning flags appropriate to the level of potential hazard.\r\n\r\nNo point telling the user that a 1.0.4 mod installed on 1.0.4 is a potential hazard because they had relaxed version checking turned on.\r\n\r\nOther than that, I'm all for both allowing relaxed version checking and non-specific max versions."}}