diff --git a/CHANGELOG.md b/CHANGELOG.md index 1dac6af379..4bdbd64a09 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,9 @@ All notable changes to this project will be documented in this file. ## v1.34.5 +### Internal +- [Policy] Fix #3518 rewrite de-indexing policy (#3993 by: JonnyOThan; reviewed: HebaruSan) ## v1.34.4 (Niven) diff --git a/policy/Opt-out-list.md b/policy/Opt-out-list.md index 14dc6d37c1..5f786a8f7c 100644 --- a/policy/Opt-out-list.md +++ b/policy/Opt-out-list.md @@ -1,14 +1,14 @@ # Opt-out List -The following authors have requested that new mods created by them are not added to CKAN without an explicit PR or other request from them. This is to meet the requirements of our [De-indexing mods from CKAN](de-indexing.md) policy. +The following authors have requested that new mods created by them are not added to CKAN without an explicit PR or other request from them. This is to meet the requirements of our [Indexing and de-indexing mods](indexing.md) policy. -KSP Community Forum name | GitHub username | Notes ------------|------------|-------------------------- -Ferram4 | Ferram4 | Complex mods with changing dependencies and installation details -nightingale | jrossignol | Self-managing metadata -RoverDude | BobPalmer | Self-managing metadata -Sarbian | Sarbian | Self-managing metadata -Angel-125 | Angel-125 | Installation problems and request by author -DefiantZombie | DefiantZombie | Request by author -cakepie | cake-pie | Guard against hot code unsuitable for general release -Well | AstroWell | Request by author +KSP forum user | GitHub user | Notes +---------------|---------------|----------------------------------------------------------------- +Ferram4 | Ferram4 | Complex mods with changing dependencies and installation details +nightingale | jrossignol | Self-managing metadata +RoverDude | BobPalmer | Self-managing metadata +Sarbian | Sarbian | Self-managing metadata +Angel-125 | Angel-125 | Installation problems and request by author +DefiantZombie | DefiantZombie | Request by author +cakepie | cake-pie | Guard against hot code unsuitable for general release +Well | AstroWell | Request by author diff --git a/policy/README.md b/policy/README.md index e2de124b08..e34579efc6 100644 --- a/policy/README.md +++ b/policy/README.md @@ -8,4 +8,4 @@ These exist here and not in the wiki so that: Right now we have policies on the following: - [Changing our version comparsion routine](version-comparison.md) -- [De-indexing mods from the CKAN](de-indexing.md) +- [Indexing and de-indexing mods](indexing.md) diff --git a/policy/de-indexing.md b/policy/de-indexing.md deleted file mode 100644 index 653aa43eb0..0000000000 --- a/policy/de-indexing.md +++ /dev/null @@ -1,16 +0,0 @@ -# De-indexing mods from the CKAN - -From time to time mod authors ask their works be removed from the CKAN. Whether or not we should do this is a matter of licensing and public good. Our policy is based on two simple principles: - -1. **The CKAN, like the legal system, takes licenses very seriously.** -1. **The CKAN acts in the interests of its users.** - -Restrictive licenses, including the default "All Rights Reserved", allow the content author absolute control over what happens to their work. **If an All Rights Reserved or other restrictive license author asks for their mod to be de-indexed, we do so promptly and without question.** - -Permissive licenses—which includes *every* license the CKAN is aware of that's not marked `restricted` or `unknown`, and includes the popular Creative Commons family of licenses—provide *explicit and irrevocable* permission to use and redistribute the content. Such a license is a strong, *legally binding* promise that the author cannot stop others from reproducing their work. One of the *primary purposes* of such a license is protection against the mod author changing their mind, or imposing further restrictions at a later date. - -When an author gives us explicit and irrevocable permission via a legal document to redistribute their work, we cannot in good faith de-index the mod and still act in the interests of our users. **Whenever possible, mods with permissive licenses will be preserved by the CKAN**, especially when alternate downloads to such mods exist, including those cached by the CKAN's own automated systems. - -In some cases it's not possible to install mods via the CKAN and maintain the goodwill of the author(s). **The CKAN will not install any mod when the primary maintainer (or a significant group of maintainers when no primary is identifiable) requests the mod be removed from the CKAN.** - -Additionally, CKAN will maintain a list of authors who have requested that their mods not be added to CKAN without their explicit request (on either a per-version or per mod level). This list will be consulted as part of the approval/vetting stage for any metadata submission. diff --git a/policy/indexing.md b/policy/indexing.md new file mode 100644 index 0000000000..6bdf7815c7 --- /dev/null +++ b/policy/indexing.md @@ -0,0 +1,36 @@ +# Indexing and de-indexing mods + +Our policy is based on two principles: + +* CKAN takes mod authors' licensing rights seriously +* CKAN acts in the interests of its users **and** mod authors + +Note that for purposes of this document, the term "author" does not necessarily mean the original author of a mod. It should be understood to include a maintainer, custodian, etc. + +## Indexing + +The CKAN team will not add a mod to CKAN without the author's permission. Checking the "Add to CKAN" checkbox on SpaceDock is taken as a request to have the mod added to CKAN (unless the uploader is not the author, see below). + +Indexing a mod on CKAN can be a burden on authors—they may need to make decisions about the metadata, and it is one more thing they are responsible for supporting. Indexing a mod on CKAN can also benefit the author: it can make installation easier, reducing support requests; it can enforce depdendencies and conflicts automatically; it provides an easy way for users to update the mod; and it can increase a mod's visibility. Minimizing the burden and maximizing the benefits to mod authors is a core goal of the CKAN team. + +A collaborative environment is crucial. When something goes wrong—and it will—sometimes the cause is the CKAN metadata, sometimes it's a bug in CKAN itself, and sometimes it's an error by a mod author. Recognizing this and working together to resolve issues yields the greatest benefit to users and mod authors. The CKAN team strives to support mod authors in fixing such issues. The CKAN team can be reached on [Discord](https://discord.gg/Mb4nXQD) (use Help→Discord in the CKAN client) or you can file an issue at: + +* (for issues related to the client) +* (for issues related to metadata for KSP1) +* (for issues related to metadata for KSP2) + +Pull requests are always welcome. + +When someone requests a mod for indexing, the CKAN team will attempt to verify that the person making the request is the author of the mod and that they comply with any licenses on the mod's content. For requests by a third party, we attempt to contact the author and only add the mod if they approve. Obviously this cannot be perfect. If you believe your content is indexed on CKAN and is in violation of its license, please alert the CKAN team via any of the above links. Note that CKAN does not host or distribute any mod content—it only links to mod content on sites like SpaceDock, GitHub, etc., and provides a method to fetch that content similar to a web browser. + +When a mod has a permissive license (GPL, MIT, CC, etc.), someone else may adopt or fork the mod and request that their version be indexed on CKAN. This ensures that abandoned mods can be continued and support requests go to the new author instead of the original one. An existing [identifier](https://github.com/KSP-CKAN/CKAN/blob/master/Spec.md#identifier) or a new identifier may be used as collaboratively decided by the author and the CKAN team. The CKAN team recommends using all possible avenues to contact the original author (GitHub, forum private message, email, etc.) and waiting a reasonable amount of time for a response before adopting a mod. The CKAN team may consider input from the previous author or other factors before indexing the adopted mod. + +When a mod has a restrictive licenses, we require proof of permission to adopt the mod from the original author before it is indexed on CKAN to ensure that previous author is OK with their work being used in this way. + +The CKAN team may reject a request to index a mod for any reason. Primarily the CKAN team will consider the impact on users and other mod authors when making this decision—for example mods that are likely to cause conflicts, data loss, compatibility issues, etc. + +CKAN maintains [a list of authors who have requested that their mods not be added to CKAN without their explicit request](Opt-out-list.md). A mod by an author on this list will not be added to CKAN unless requested by the author. + +## De-indexing + +If an author asks for their mod to be de-indexed, the CKAN team may inquire as to the reason, in case it is related to an issue that we can fix for them and they were not aware that we can do that. If we can, we'll work to fix the problem to the mod author's satisfaction. If not, or if we can't fix the issue, then we will de-index the mod promptly.