modrinth / code

The Modrinth monorepo containing all code which powers Modrinth!
https://modrinth.com
Other
918 stars 169 forks source link

PerWorldPlugins returns client_side and server_side as "unknown" #2640

Closed JulianVennen closed 1 year ago

JulianVennen commented 1 year ago

Describe the bug

The plugin PerWorldPlugins returns client side and server side compatibility as "unknown" in the API: https://api.modrinth.com/v2/project/perworldplugins

According to the API documentation, the value "unknown" should not exist. Since plugins are never supported on the client and always required on the server, it would probably it might make sense to default to these values. There are some plugins like simple voice chat that do require a client side mod, but since these have a mod included in them, they also return the correct options.

Steps to reproduce

  1. Go to https://api.modrinth.com/v2/project/perworldplugins
  2. check the value of client_side and server_side
  3. Go to https://docs.modrinth.com/api-spec/#tag/project_model
  4. See that these properties should only have the values "required","optional" or "unsupported"

Expected behavior

Either the docs should contain the value "unknown" or the API should not be returning it.

Additional context

No response

triphora commented 1 year ago

In theory there should not be any non-draft projects that are able to return unknown. I've fixed PerWorldPlugins; if you come across any others, please report it using the Report feature on the site under the category "invalid metadata".

More context: https://github.com/modrinth/docs/pull/31#discussion_r835992496

JulianVennen commented 1 year ago

I have found 86 other projects with the same problem:

Slug ID Client Server
hyper-realistic-sky PsMUgCo5 unknown unknown
mmmmmmmmmmmm Adega8YN unknown unknown
minimal Q3v8it82 unknown unknown
eclectic-trove-legendary-tooltips 8GunilxB unknown unknown
purple-gui CghMkzlW unknown unknown
fat-experience-orbs dbigkc0P unknown unknown
f8thful ZrW0og1b unknown unknown
dark-mode-everywhere-fabric bJF8eNMy required unknown
modern-font-pack 2C5ThaTB unknown unknown
better-water- sDf2tmD8 unknown unknown
mscakes mtzLWCA5 unknown unknown
poko MeBY1jLx required unknown
better-keep-inventory AJP9kwFS unknown unknown
programmer-art-plus NGYridKF unknown unknown
bcl eotXuHjA unknown unknown
embellished-stone-advancements-plaques wFLeBRkG unknown unknown
drowns-tool-tweaks BULmW8dH unknown unknown
tightfault-revamp-edit nfw2Qplb unknown unknown
reforged-armory dOT3fQ9Z unknown unknown
lunar-client-fire-fix TPoj4BTg unknown unknown
saiko-lightsaber-pack P9pd23AT unknown unknown
allay-totem-of-undying lrjtnlyr unknown unknown
variant-barrels E15aXf4P unknown unknown
unified-zombies LaK75rwp unknown unknown
invisible-frames K5IRddrD unknown unknown
dls-creeper aG78N9Bx unknown unknown
smooth-font-pack 4UpjQtW1 unknown unknown
uncrafted Ih3e7dxQ unknown unknown
oreocookies rKriEfdt unknown unknown
echo-bow lLAWKT6P unknown unknown
xitemsremover rVsfsOIc unknown required
custom-join-messages PJMIw5vh unknown unknown
instakillmobs 484RbWh7 unknown unknown
better-map-items EYdutVcx unknown unknown
gentle-picking YVYq7eox unknown unknown
blockprot uF5ePKuc unknown unknown
cosmorp ORIVoodV unknown unknown
mods-ru GsoCvyCO unknown unknown
hide-chat-toasts-and-chat-bars yvdkGUKV unknown unknown
void-opal s3w3N7Ae unknown unknown
8-bit 81sDA1s6 unknown unknown
future-hud-advancement-plaques Bz67TFp7 unknown unknown
rop 9E0mswEP unknown unknown
more-amethyst-recipes DcLnY1WI unknown unknown
unique-wood n2gf39xI unknown unknown
better-ladder-3d OcH26jny unknown unknown
chromahudfabric PzuxEnMj unknown unknown
universal-multi-stone-ores oLu8l2s0 unknown unknown
hidden-totem RHeHDY7P unknown unknown
aon-dark-ui-overhual bDPrulz9 unknown unknown
compact-font JsMwJ2g4 unknown unknown
yourscraft ggjO7jmL unknown unknown
better-spruce-trapdoor V4SKvoqS unknown unknown
jappafied-aethers NxpNOKEe unknown unknown
shine-v1.0 ECvAxsVf unknown unknown
chromium-amethysts faoF1lBT unknown unknown
dynamite-totem S14aIkRR unknown unknown
gilded-ingot 2VLZ3B93 unknown unknown
amazingly-optimized Z1LYQaOH required unknown
better-head-holding umGMT7Ze unknown unknown
opendyslexicfont cawT25HC unknown unknown
chunkheat BuVzcqkn unknown unknown
better-bookshelves rzDBk64g unknown unknown
iaxpresencefootsteps AoyJXBFB unknown unknown
better-droppers-and-dispensers C4g2D1mv unknown unknown
my_village_pack exT8xX0I unknown unknown
greyscale mHNsfZ54 unknown unknown
spoingly-slimes QucKkIqL unknown unknown
chappeau 4FLfsAEn unknown unknown
ctov-domesticated-innovation-compat BORRKwOq unknown unknown
animeboard vsxVlREP unknown required
simple-blue-gui 3NFPhQvK unknown unknown
styled-enchanting-tables q369WoPk unknown unknown
purpurpacks-pickaxe-effective-light-source-blocks ERLjKg7g unknown required
figurative KserzJKv unknown unknown
pgm-sounds KbOhZv1T unknown unknown
colored-whiteboard j5AyZaqe unknown unknown
blueprinted GygNYJ1O unknown unknown
headstones owmHZ0lO unknown required
skulltohead Mkl8Htig unknown unknown
sunrise cDCyvHfr unknown unknown
computercraft-pastebin-patch 65CVhIWm unknown unknown
raiguri-better-potr BqIuonip unknown unknown
green-screen-panorama QOHBbtD7 unknown unknown
geeksmp DW75m6hC unknown unknown
purpurpacks-stone-to-iron-tools-upgrades 8zLmjJ4K unknown required

In case that's useful I also have the raw JSON data for all these projects: https://gist.github.com/JulianVennen/da74d94460cb5f01a1bba0b1c57a94ac

JulianVennen commented 1 year ago

any update on this?

triphora commented 1 year ago

Went in and fixed them all.


labrinth.public> SELECT t.*
                 FROM public.mods t
                 WHERE (client_side = 4 OR server_side = 4) AND status = 'approved'
                 LIMIT 501

-- From...
[2023-07-23 17:17:29] 84 rows retrieved starting from 1 in 361 ms (execution: 318 ms, fetching: 43 ms)

-- To...
[2023-07-23 17:30:53] 0 rows retrieved in 95 ms (execution: 86 ms, fetching: 9 ms)