Commit Graph

2210 Commits

Author SHA1 Message Date
Anmol Sethi 82e8a00a0d
Fix CI 2020-11-06 10:12:46 -05:00
Anmol Sethi bea185b8b2
plugin: Add basic loading test
Will work on testing overlay next.
2020-11-06 10:12:46 -05:00
Anmol Sethi e08a55d44a
src/node/plugin.ts: Implement new plugin API 2020-11-06 10:12:45 -05:00
Anmol Sethi 481df70622
ci/dev/test.sh: Pass through args 2020-11-06 10:11:57 -05:00
Anmol Sethi aa2cfa2c17
typings/plugin.d.ts: Create 2020-11-06 10:11:57 -05:00
Asher 959497067c
Document HttpError
Also type the status.
2020-11-05 17:07:58 -06:00
Asher f7076247f9
Move domain proxy to routes
This matches better with the other routes.

Also add a missing authentication check to the path proxy web socket.
2020-11-05 17:07:32 -06:00
Asher f6c4434191
Tweak proxy fallthrough behavior
It will now redirect all HTML requests. Also it avoids req.accepts since
that's always truthy.
2020-11-05 16:49:30 -06:00
Asher cb991a9143
Handle errors for JSON requests
Previously it would have just given them the error HTML.
2020-11-05 15:19:56 -06:00
Asher 3f1750cf83
Fix destroying response in update again
I added another reject that doesn't destroy the response.
2020-11-05 15:08:10 -06:00
Asher 7b2752a62c
Move websocket routes into a separate app
This is mostly so we don't have to do any wacky patching but it also
makes it so we don't have to keep checking if the request is a web
socket request every time we add middleware.
2020-11-05 15:08:09 -06:00
Asher 9e09c1f92b
Upgrade to Express 5
Now async routes are handled!
2020-11-05 15:08:08 -06:00
Asher 8252c372af
Provide a way to tell when event handlers are finished
This lets us actually wait for disposal before a graceful exit.
2020-11-05 15:08:07 -06:00
Asher 396af23842
Kill VS Code when process exits
This is to ensure it doesn't hang around.
2020-11-04 17:07:41 -06:00
Asher 34225e2bdf
Use ensureAuthenticated as middleware 2020-11-04 17:07:40 -06:00
Asher 476379a77e
Fix cookie domain
Had double Domain=
2020-11-04 17:07:39 -06:00
Asher 210fc049c4
Document VS Code endpoints 2020-11-04 17:07:39 -06:00
Asher e5c8e0aad1
Remove useless || 2020-11-04 17:07:38 -06:00
Asher c5ce365482
Use query variable to force update check 2020-11-04 17:07:37 -06:00
Asher a653b93ce2
Include protocol on printed address
This makes it clickable from the terminal.
2020-11-04 17:07:36 -06:00
Asher e2c35facdb
Remove invalid comment on maybeProxy
It no longer handles authentication.
2020-11-04 17:07:35 -06:00
Asher 75b93f9dc5
Fix bind address priority
Broke when converting to a loop.
2020-11-04 17:07:24 -06:00
Jon Ayers 1eebde56ab
Specify that Coder Alpha requires v3.6.2 (#2270) 2020-11-03 18:03:28 -06:00
Asher e27188c2f9
Merge pull request #2268 from cdr/update-alpha
Update README Alpha section to remove reference to typeform
2020-11-03 17:33:02 -06:00
Jon Ayers ddbac8dd78
Update README Alpha section to remove reference to typeform 2020-11-03 23:31:08 +00:00
Asher 8066da12fe
Remove unused Locals interface 2020-11-03 15:37:22 -06:00
Asher 03e0013112
Unbind error/exit events once handshakes resolve 2020-11-03 15:27:21 -06:00
Asher e243f6e369
Return early when forking to reduce indentation 2020-11-03 15:27:21 -06:00
Asher c10450c4c5
Move isFile into util
That allows its use in entry.ts as well.
2020-11-03 15:27:20 -06:00
Asher c72c53f64d
Fix not being able to dispose vscode after failed disposal 2020-11-03 14:36:27 -06:00
Asher f4e5855318
Simplify update request 2020-11-03 14:35:23 -06:00
Asher 3a074fd844
Skip unnecessary auth type check when using --link 2020-11-03 14:30:34 -06:00
Asher 8a9e61defb
Use Addr interface everywhere and loop over arg sources 2020-11-03 14:28:49 -06:00
Asher 1067507c41
Proxy to 0.0.0.0 instead of localhost 2020-11-03 14:28:48 -06:00
Anmol Sethi f9e0990594
Merge pull request #2255 from cdr/self-signed-3b2c
Fix self signed certificate for iPad
2020-11-03 14:04:47 -05:00
Anmol Sethi c07296cce0
docs: Add known issues to iPad docs and add more links to iPad docs
Closes #1816
2020-11-03 14:04:19 -05:00
Anmol Sethi 31306f7fdd
docs: Add iPad self signed certificate documentation
Closes #1816
Closes #1566
2020-11-03 14:04:19 -05:00
Matthew Beckett 7affce5801
Merge branch 'v3.6.2' into feature/helm3 2020-11-03 12:28:29 +00:00
Asher 37b87dd2b8
Merge pull request #2264 from cdr/v3.6.2
v3.6.2
2020-11-02 18:07:53 -06:00
Asher 9bde62fbd6
v3.6.2 2020-11-02 17:17:25 -06:00
Asher 6fbbb1047f
fmt 2020-11-02 17:17:09 -06:00
Asher e07a591745
Catch cloud agent download failure
- See #2251 and #2229.
2020-11-02 16:48:25 -06:00
Asher 676c7bf915
Merge pull request #2250 from cdr/disconnects
Experimental initial connection fix
2020-11-02 16:46:14 -06:00
Asher 9ad7d0b7a3
Fix potential 500 when loading in parallel 2020-10-30 16:16:46 -05:00
Asher 07e7c38ea2
Immediately pause web socket
This will buffer any data sent to it until something is ready to listen
on it.
2020-10-30 16:16:46 -05:00
Asher 0b9af6ef67
Initiate connection handshake from server
This way the connection can be initiated by either side. It looks like
sometimes the initial message from the client is lost (it never makes it
into the onControlMessage callback) but I'm still not sure why or if
that is preventable.

Also added a timeout on the server end to clean things up in case the
client never responds.
2020-10-30 16:16:45 -05:00
Asher c63dc3a1ea
Add more logging around connections 2020-10-30 16:16:44 -05:00
Anmol Sethi a1b61d1659
src/node/util.ts: Mark generated certificates as CA
Required for access under iPad.
2020-10-30 13:36:53 -04:00
Anmol Sethi bae28727bd
src/node/cli.ts: Add --cert-host to configure generated certificate hostname 2020-10-30 13:36:53 -04:00
Anmol Sethi 8b85006996
src/node/util.ts: Make certificate generation "modern"
Now we add a subject alt name, set extendedKeyUsage and use the
correct certificate extension.

The above allow it to be properly trusted by iOS.

See https://support.apple.com/en-us/HT210176

*.cert isn't a real extension for certificates, *.crt is correct
for it to be recognized by e.g. keychain or when importing as a profile
into iOS.

Updates #1566

I've been able to successfully connect from my iPad Pro now to my
code-server instance with a self signed certificate! Next commit
will be docs.
2020-10-30 13:36:53 -04:00