-
-
Notifications
You must be signed in to change notification settings - Fork 348
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
[Feature]: easier distribution for pre-release versions of mods #4159
Comments
This comment was marked as resolved.
This comment was marked as resolved.
Sure. Specifically I often put out a pre-release version of mods like RasterPropMonitor and FreeIva and have people alpha-test them for a bit to screen for any new bugs before pushing a wider distribution. These currently always have to be manually installed since CKAN doesn't pick them up. It would be nice to make that process a little more streamlined. |
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
There’s boring crew services here, but it currently only has pre-releases and is not yet ckan indexed. It does have an internal .ckan if that helps. |
@HebaruSan Here ya go, hot off the github workflows: https://github.com/FirstPersonKSP/FreeIva/releases/tag/0.2.20.0 |
I have a prototype of this mostly completed in a local branch; instead of skipping prereleases, it inflates them and sets But there's a catch: since the old client has no special handling for One option for addressing this is |
I mocked up some prereleases in my local metadata, and it works, but I'm not sure about the UI (ignore the weird foreground colors, I'll look into those later): Any suggestions on how to indicate which versions are not shown as installable because they're prereleases (the top two rows, in this case)? I've thought of these options, which I don't love:
Regardless of how that works out, we have plenty of space to explain it in the popup if they click one of those checkboxes: |
How about a new row colour & italics, that’d make it more obvious and force the user to check what the version they’re installing in the legend above, maybe purple/pinkish or something? side note, how does one differentiate between testing and bleeding edge as a modder? |
I don't know, I didn't create these categories, and the ones who did didn't document a definition that I've been able to find, and sometimes used them interchangeably: #403 (comment) I guess I would start by taking them literally:
But ultimately they'll be defined functionally: pick "testing" if you want it to be installed for users who chose |
Apparently |
I assume this would need to be not just mod-specific, but also instance-specific? I.e., e.g., this is the game instance where I use pre-releases of ... FARc, and in other instances I use the stable release? |
Right but how do i do this, because github doesn’t specify different types of pre-releases. I don’t personally see a point in having 2 “less-than-stable” options, especially if it’ll require the sorts of shenanigans mentioned above. |
As for the colour and moving of the legend, i think those both look good. |
Oh, I misunderstood what you were asking. Yes, in the code that I have in progress, pre-releases would be set to
Well, 2 options already exist. Our job is to figure out what to do with them. If you don't see any way to do that, then that's fine, you don't have to help with that part.
Right, it's not a pre-release. Pre-releases would be
Yeah, I'm not married to the existing text. Suggestions welcome! |
I see, that’s great!
As for this part, sure i don’t have to help. I’m just pointing out (and perhaps questioning) what the use of the development is. To me now with this added context it sounds like it’ll never be assigned automatically and only be assigned by a modder. For the other 3 parts about the text around the “Development” label already existing, and suggestions for it being welcome. I guess i’m just trying to understand why it exists in the first place. You say:
Is this something that you’re unwilling to change? I feel like conforming to pre-existing types, even when they might not make sense is a little strange, but I’m open to having my mind changed on that if there’s a good argument for it! |
I’d really suggest not using coral/red for prerelease versions. It looks too much like a conflict. Yellow or orange would probably be better. |
This comment was marked as resolved.
This comment was marked as resolved.
These are barely noticeable to me, (though that’s probably related to my night shift settings) i’d still like to see what a magenta or something similar would look like. |
I like yellow and orange, magenta is also fine. |
This comment was marked as resolved.
This comment was marked as resolved.
What about SpaceDock? I currently have three hard coded substrings ("alpha", "beta", "pre") which, if found in the version string of a release on SpaceDock (case insensitive), would cause those versions to be marked as |
I'm personally of the opinion that pre-releases aren't supposed to be on spacedock at all. |
No problems in that case, none of the strings would match |
Motivation
I often put out a pre-release version of mods like RasterPropMonitor and FreeIva and have people alpha-test them for a bit to screen for any new bugs before pushing a wider distribution. These currently always have to be manually installed since CKAN doesn't pick them up. It would be nice to make that process a little more streamlined.
Suggestions
I'd like to explore a way for mod developers to be able to publish pre-release versions of their mods and have users opt-in to receiving them.
I think in the past this has been done by adding metadata repos (for kopernicus?). This works but feels pretty clunky - and requires a lot of extra work on behalf of the modder to set up.
There are two components that I'd like to see in some kind of system:
The modder's side of this sort of already exists, at least on github: releases can be marked as pre-release and ckan does not index these. There is a release_status field in the .ckan metadata - is this actually used for anything currently? As a weak proposal, what if we indexed github prereleases and set their release_status field? And then the decision to update or not would be on the client side.
The text was updated successfully, but these errors were encountered: