-
Notifications
You must be signed in to change notification settings - Fork 238
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
Fetch+ #1492
base: master
Are you sure you want to change the base?
Fetch+ #1492
Conversation
The problem with having CORS proxies "built in" to extensions like this is that, the nature of the internet and APIs is that they tend to go offline after an amount of time. We need them to live for as long as TurboWarp theoretically will, and the more we depend on external websites like this, the more projects that might break in the future (projects by real people). One example is "S-Grab", which is now fundamentally pointless because the API that it relied on appears to be down or dysfunctional. Providing some kind of direct and more explicit way to tell people about CORS errors (or fetching errors in general) would encourage them to use google and find a CORS proxy of their own - that way if it goes down, TurboWarp isn't to blame. |
As always, if a CORS proxy goes down, a fellow TurboWarp user can always
swap it out in the source code.
Plus, it's increasingly hard to find a good CORS proxy that's not paid
these days.
…---
Even if CORS errors did show up, most users would not know that they need
to use a proxy, let alone which one.
In my extension, even if the default proxy doesn't work, you can always use
a fallback proxy with the (fetch [x]) block.
On Mon, May 27, 2024, 8:35 PM LilyMakesThings ***@***.***> wrote:
The problem with having CORS proxies "built in" to extensions like this is
that, the nature of the internet and APIs is that they tend to go offline
after an amount of time. We need them to live for as long as TurboWarp
theoretically will, and the more we depend on external websites like this,
the more projects that might break in the future (projects by real people).
One example is "S-Grab", which is now fundamentally pointless because the
API that it relied on appears to be down or dysfunctional.
Providing some kind of direct and more explicit way to tell people about
CORS errors (or fetching errors in general) would encourage them to use
google and find a CORS proxy of their own - that way if it goes down,
TurboWarp isn't to blame.
—
Reply to this email directly, view it on GitHub
<#1492 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AZTWPZKAVJTMWNWPFE4TRRTZEPGNTAVCNFSM6AAAAABIL4DN32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMZUGE3TINBRHE>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
we should not have to manually update the proxy every time it goes down or stops working, |
I have a problem where I start flame wars easily, so (no offense) I need to stop replying to criticism for a bit. |
understandable |
There are over 100 extensions in this repository that have only 1 consistent maintainer. Reducing the amount of maintenance on each extension is an absolute must, and submitting an entire extension that can only work if it is maintained consistently is simply an unreasonable expectation. At least if a user of TurboWarp runs into an issue with the CORS proxy they're using in their own code, they can just change it themselves. But what happens when their code suddenly breaks for no apparent reason? Bug reports. I don't know, this extension just seems like a fundamental nightmare. |
Here's my *hopefully final* argument: the CORS proxy is for convenience,
not resilience.
…On Tue, May 28, 2024, 9:45 PM LilyMakesThings ***@***.***> wrote:
As always, if a CORS proxy goes down, a fellow TurboWarp user can always
swap it out in the source code.
There are over 100 extensions in this repository that have only 1
consistent maintainer. Reducing the amount of maintenance on each extension
is an absolute must, and submitting an entire extension that can only work
if it is maintained consistently is simply an unreasonable expectation.
At least if a user of TurboWarp runs into an issue with the CORS proxy
they're using in their own code, they can just change it themselves. But
what happens when their code suddenly breaks for no apparent reason? Bug
reports.
I don't know, this extension just seems like a fundamental nightmare.
—
Reply to this email directly, view it on GitHub
<#1492 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AZTWPZKFA47ACQ3XCQCVCDDZEUXLLAVCNFSM6AAAAABIL4DN32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMZWGM3DMOJYGI>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Then it's not fit for here, I don't know what to tell you |
We do need to properly educate people about CORS and why their fetch blocks usually don't work, that much is true |
In addition to concerns listed above, there is another one: a lot of extensions have some kind of "load the thing from URL" blocks, but your current solution only addresses the issue for 1 specific extension. |
nuh uh |
Yes, sorry, that was incorrect. It requires you to create an account at a certain request point, though. |
According to the contribution guide, shouldn't this just be an update to the original Fetch extension? The normal fetch mode on |
yes it technically should be an update, but...
which does not mean just slapping corsproxy as an option, plus what they said above. |
It's like making an extension that takes the join block, and making it join a string and "!" to it |
This extension shouldn't be merged.
|
I feel like there's still a chance for this extension, despite it's many flaws. For reference, I made a similar PR a while ago (#760) and although it never got merged, some of the fundamental ideas people have brought up in this conversation do carry over from it.
|
A more appropriate solution would be to have a better error response for |
Just gave it a shot. And I think there are tons of valid points. |
Fetch+ is like Fetch, but it has support for a CORS proxy too.