Comments (10)
Thanks for the quick fix! 🙏
from excalidraw-room.
Looks like alerting would push the price from the current $7 a month to $25 a month.
from excalidraw-room.
first, I'm terribly sorry for breaking the app today.
I tried to reproduce the issue locally by running the frontend and the backend on different domains, and I can't reproduce it.
I'm running the backend repository with the changes from my PR, and all WebSocket requests sent to the backend come back with an access-control-allow-origin header with the value being the domain of the frontend app.
The value of the access-control-allow-origin header on the response is matching the origin header of the request.
I'm down to help fix it but I need to figure out a way to reproduce it first.
from excalidraw-room.
@asvinours no worries, I don't think it was your fault. We shouldn't be able to make the entire server crash by fixing something.
I am not familiar with how to run it or the app itself, @idlewinn, @lipis and @petehunt built it I believe. It would be nice if they could help you out debugging this.
from excalidraw-room.
Numbers are back looking healthy
from excalidraw-room.
Oh, my fault for not properly testing before merging.
Thing is, I'm running the exact same thing on a different server so I assumed it's safe to merge. Nvm, that server isn't actually subject to preflight requests. But I don't see any OPTIONS requests on excalidraw.com either. It's hard to debug this one.
Btw, the handlePreflightRequest
is undocumented, and the typings are wrong. There's no Server
argument, the signature should be (req: http.IncomingMessage, res: http.ServerResponse)
. I'm wondering how it could work before at all. EDIT: ok, that seems to be the problem as the latest PR introduced that change to function signature.
from excalidraw-room.
socketio/socket.io-client#1140 (comment)
socketio/socket.io-client#1140 (comment)
I think the second comment is pointing out the issue.
My IDE is telling me the signature of the function is the following: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/engine.io/index.d.ts#L107
from excalidraw-room.
I think the types are simply wrong. The 2.x.x
and 3.x.x
have the server as thisArg
instead of an argument, and in 4.x.x
the handlePreflightRequest()
API is removed altogether.
from excalidraw-room.
We should add a test that makes sure that the build actually works somehow.
At the moment, Heroku itself picks up a new commit was merged and starts the deployment process. We can alter that to make a GitHub action do the deploy so we are able to run a test before that that will actually test the server is working before doing the deployment. We also have a staging app on Heroku that we can use to make an integration test but don't quote me on that, it may need a bit more investigation.
There is an issue already #13 that I'm suspecting it was meant to allow doing that but never picked up.
from excalidraw-room.
Should be ok now.. no?
from excalidraw-room.
Related Issues (16)
- Add GitHub action to automatically deploy on Heroku
- How to see, if exclidraw is using this instead of main server? HOT 2
- Create a health URL for our upptime robot
- Support multiple nodes HOT 2
- Mark this project as archived HOT 9
- file ./dist/index.js missing
- Question - How to try out collaboration using this repo and excalidraw repo? HOT 1
- Starting excalidraw-room using the recommended pm2 command does not work. HOT 1
- Self Hosted Collab Excalidraw with containers HOT 8
- Update `socket.rooms` iteration to support `Set<string>` in `for..in` loop
- How can both Excalidraw and Excalidraw-room work together? HOT 1
- Add GitHub action to automatically deploy on GCP
- Add GitHub action for linting
- Add ESLint HOT 2
- Build fails HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from excalidraw-room.