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

the old curseforge api has been disabled, create a new version with this change included #190

Closed
theofficialgman opened this issue Jul 3, 2022 · 4 comments
Labels
bug Something isn't working triage Needs to be checked by a maintainer

Comments

@theofficialgman
Copy link

theofficialgman commented Jul 3, 2022

Describe the bug

old curseforge api is finally down (from my end)

Steps to reproduce

unable to install ALL mods since curse gets searched first and the retry limit gets reached

betterbeds
    🔍 Searching for mod
        1: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=better-beds. Retrying in 1.0 seconds...
        2: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=better-beds. Retrying in 1.5 seconds...
        3: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=better-beds. Retrying in 2.25 seconds...
        4: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=better-beds. Retrying in 3.375 seconds...
        5: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=better-beds. Retrying in 5.0625 seconds...
        5: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=better-beds. Giving up.
        503: Service Unavailable
        🔺 Max retries exceeded. Skipping...

betterbeds is available on modrinth, however, because curseforge still exists in this code, it gets tried and skipped entirely

Expected Behavior

curse is removed and modrinth still works

Info

  • OS: ubuntu bionic
  • Python --version: 3.8.0
  • minecraft-mod-manager --version: 1.3.0
@theofficialgman theofficialgman added bug Something isn't working triage Needs to be checked by a maintainer labels Jul 3, 2022
@theofficialgman
Copy link
Author

theofficialgman commented Jul 3, 2022

even specifying modrinth does not work.... it still checks curseforge first

mmm -v "1.18.2" install sodium=modrinth
sodium
    🔍 Searching for mod
        1: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=sodium. Retrying in 1.0 seconds...
        2: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=sodium. Retrying in 1.5 seconds...
        3: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=sodium. Retrying in 2.25 seconds...
        4: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=sodium. Retrying in 3.375 seconds...
        5: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=sodium. Retrying in 5.0625 seconds...
        5: Failed to connect to https://addons-ecs.forgesvc.net/api/v2/addon/search?gameId=432&sectionId=6&searchFilter=sodium. Giving up.
        503: Service Unavailable
        🔺 Max retries exceeded. Skipping...
        🔺 1 mods not found
            sodium
                Check so that it's slug is correct. You can set the slug by running:
                minecraft-mod-manager configure sodium=curse:mod-slug,modrinth:mod-slug

please create a 1.4.0 with the commits from master which removed curseforge

@Senth
Copy link
Owner

Senth commented Jul 4, 2022

Thanks @theofficialgman for letting me know. I've released v1.4.0 which disables the CurseForge API.

The last week, I've been working on a backend that uses the new API since I managed to get an API key. As I can't distribute the key with the app this was the only way I could see how it would work. The backend will also search/get mods from Modrinth.

This will also allow me to improve the search/find functionality without having to add specific slugs in the future 🙂

A bit unsure about the timeline for when Curse is up and running again. Estimate is between 1 and 4 weeks, depending on how much time I can spend on the project 🙂

@Senth Senth closed this as completed Jul 4, 2022
@theofficialgman
Copy link
Author

I am aware of the curseforge issues... seems almost unusable the new api to me. I'm in agreement with peterix's interpretation (from multimc) https://tinyurl.com/28r42fwk (tinyurl so as to not link to that issue)

@Senth
Copy link
Owner

Senth commented Jul 4, 2022

Yeah, the proxy would also break TOS. But I'm going with that route since if I share the key with the app it won't take long until that key is used in multiple places where I cannot enforce it.

But there is a third solution. The third solution would be to have CurseForge disabled by default and ask each user to apply for a developer API key. The user can then supply the key themselves. But I want to avoid this since it is not user-friendly.

So I'm going with the proxy, and if my key is disabled I will change and add a new header in the API call to the proxy, that way it should still be able to search on CurseForge, even though that would disclose the API key to a third-party (me).

If that's the case I'll try to fix the issue again by moving everything to the client again. 🤷‍♂️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working triage Needs to be checked by a maintainer
Projects
None yet
Development

No branches or pull requests

2 participants