Skip to content

Restructure #1338

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

Merged
merged 96 commits into from
Mar 3, 2020
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
96 commits
Select commit Hold shift + click to select a range
b29346e
Implement new structure
code-asher Feb 4, 2020
b30aefc
Add linting steps and improve testing steps
code-asher Feb 4, 2020
4a54e91
Remove 32 bit arm builds from CI
code-asher Feb 4, 2020
dbc5c06
Improve HTTP provider registration
code-asher Feb 4, 2020
8cc11d1
Improve routing
code-asher Feb 5, 2020
7c6fe56
Add logo to background
code-asher Feb 5, 2020
6e809b6
Handle when VS Code fails to load
code-asher Feb 5, 2020
a149c5f
Pass arguments to code-server during watch
code-asher Feb 5, 2020
4cc181c
Make routing base path agnostic
code-asher Feb 5, 2020
205775a
Only serve HTML on specific index.html requests
code-asher Feb 5, 2020
6cebfa4
Generalize initial app logic
code-asher Feb 6, 2020
efaeb3b
Add hidden username field for accessibility
code-asher Feb 6, 2020
8a0f1d8
Move start path logic out of patch and fix it
code-asher Feb 6, 2020
63f3c04
Move user data directory logic out of patch
code-asher Feb 6, 2020
26f8216
Un-nest a switch
code-asher Feb 6, 2020
2564190
Implement cli parser
code-asher Feb 7, 2020
5baf166
Fix VS Code product configuration not loading
code-asher Feb 7, 2020
ac4f2b8
Update VS Code to 1.42.0
code-asher Feb 13, 2020
cc79edb
Fix duplicate files opening with folder parameter
code-asher Feb 13, 2020
bf1be16
Fix base path
code-asher Feb 13, 2020
b8fa7da
Simplify frontend
code-asher Feb 13, 2020
db54f78
Implement automatic updates
code-asher Feb 14, 2020
0ec83f8
Check updates daily instead of every time
code-asher Feb 14, 2020
80b1b1b
Shake CI and docs up
nhooyr Feb 14, 2020
4aa1540
Format and lint
nhooyr Feb 15, 2020
61d1af0
Add macOS release step
nhooyr Feb 15, 2020
0d31a51
Add github release creation
nhooyr Feb 15, 2020
eb3cf30
Add back travis since github actions is trash
nhooyr Feb 18, 2020
1a54f6b
Merge remote-tracking branch 'origin/restructure' into anmol-restructure
nhooyr Feb 18, 2020
39a5770
Enable access to vscode cli
code-asher Feb 18, 2020
1a91588
Add docker image pushing
nhooyr Feb 18, 2020
d47591e
Inject base path into manifest
code-asher Feb 18, 2020
f6b092b
Merge branch 'restructure'
code-asher Feb 18, 2020
16bcf59
Merge pull request #1357
code-asher Feb 18, 2020
8793110
Implement endpoint for getting recent directories
code-asher Feb 18, 2020
bdb189a
Allow https images
code-asher Feb 18, 2020
1aaa536
Pass through travis tag in run.sh
nhooyr Feb 18, 2020
46d6e17
Prepare for release
code-asher Feb 18, 2020
5681c87
Fix bugs in CI
nhooyr Feb 19, 2020
b6aa0cb
Fix docs
nhooyr Feb 19, 2020
76831f1
Merge branch 'fix-ci' into restructure
nhooyr Feb 19, 2020
a065c12
CI Fixes
nhooyr Feb 19, 2020
b76364d
Flesh out FAQ
nhooyr Feb 19, 2020
9f32403
Doc fixes
nhooyr Feb 19, 2020
015b8dc
Merge branch 'ensure-release' into restructure
nhooyr Feb 19, 2020
fa30639
Update issue template
nhooyr Feb 19, 2020
0263188
Handle --long=value format in the cli parser
code-asher Feb 19, 2020
0e2eaa9
Add valid values for --log
code-asher Feb 19, 2020
80b2d94
Don't display stack trace for cli parse failures
code-asher Feb 19, 2020
b9e7a3d
Add back .editorconfig
nhooyr Feb 19, 2020
51a5c77
Add binary extraction
code-asher Feb 19, 2020
e5b68a8
Switch to new extensions API
code-asher Feb 19, 2020
c567a06
Fix HTTPS redirects and TLS sockets
code-asher Feb 19, 2020
288e794
Update locale file location
code-asher Feb 20, 2020
25288b1
Cleanup FAQ and mention GPG/SSH forwarding
nhooyr Feb 20, 2020
65690fc
Fix CSP for Safari
nhooyr Feb 20, 2020
3a2644a
Fix vscode.sh
nhooyr Feb 20, 2020
815dc06
Use npm rebuild instead of yarn --no-scripts in vscode.sh
nhooyr Feb 21, 2020
319cd3f
Make updating work for both binary and loose releases
code-asher Feb 20, 2020
e44ac0a
Use last positional argument as working directory
code-asher Feb 21, 2020
9b7a203
Make login page pretty
nhooyr Feb 21, 2020
cf0f111
Handle upgrade from binary to loose files
code-asher Feb 21, 2020
33b3523
Prefer command-line directory to last visited directory
code-asher Feb 21, 2020
bd7583a
Obey process.env.PORT
nhooyr Feb 21, 2020
c147711
Remind user that generated password is in logs
nhooyr Feb 21, 2020
04e449c
Require cert-key with cert
code-asher Feb 24, 2020
4c6e4be
Fix port being randomized
code-asher Feb 24, 2020
f76c809
Fix workspace storage creation
code-asher Feb 25, 2020
c870398
Switch to loose files
code-asher Feb 25, 2020
b1760c8
Fix clean.sh
nhooyr Feb 26, 2020
595ce6f
Update styling
code-asher Feb 26, 2020
082f25f
Add a note about external authentication
code-asher Feb 26, 2020
75ca5b2
Add gcs upload to CI
code-asher Feb 26, 2020
07fcf1b
Merge branch 'master' into restructure
code-asher Feb 26, 2020
a2639ac
Add `yarn vscode` step to build instructions
code-asher Feb 26, 2020
b00f6bf
Improve error display when VS Code fails to load
code-asher Feb 26, 2020
b5c425b
Major version -> 3.0.0
code-asher Feb 26, 2020
01710cf
Update download instructions
code-asher Feb 26, 2020
70ad235
Remove gif link for now
code-asher Feb 27, 2020
fd65cad
Upload into releases directory
code-asher Feb 27, 2020
21cfeb9
Add the ability to kill running VS Code instance
code-asher Feb 27, 2020
0e37201
Add spacing between items
code-asher Feb 27, 2020
eef2ed0
Update PWA icons
kylecarbs Feb 27, 2020
963ebac
Register a service worker
code-asher Feb 27, 2020
0f87798
Don't write bad password back out to input
code-asher Feb 28, 2020
a8914b0
Output code-server version on startup
code-asher Feb 28, 2020
88cab27
Compress when sending client-side extension tars
code-asher Feb 28, 2020
c146457
Add recents section
code-asher Mar 2, 2020
069c523
Move VS Code to the root
code-asher Mar 2, 2020
ccd01c4
Integrate update notifications into VS Code
code-asher Mar 2, 2020
79b4c64
Add example gif
code-asher Mar 2, 2020
ecac0dd
Handle unexpected string errors
code-asher Mar 2, 2020
77af2a5
Fix worker require paths when behind proxy
code-asher Mar 2, 2020
e0e019f
Fix mime type for compressed client-side extensions
code-asher Mar 3, 2020
c544509
Update favicon
kylecarbs Mar 3, 2020
8d934be
Elaborate what won't work over an insecure domain
code-asher Mar 3, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
209 changes: 66 additions & 143 deletions .drone.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,29 @@ platform:

steps:
- name: cache:restore
image: node:12
image: codercom/nbin:centos
commands:
- yum install -y libxkbfile-devel libsecret-devel
- . /opt/rh/devtoolset-6/enable
- ./scripts/cacher.sh

- name: lint
image: node:12
commands:
- yarn lint

- name: test
image: codercom/nbin:centos
commands:
- yum install -y openssl
- yarn test

- name: build
image: codercom/nbin:centos
commands:
- yum install -y libxkbfile-devel libsecret-devel
- . /opt/rh/devtoolset-6/enable
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing so we can preserve cache for the next run'
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing to preserve cache for the next run'

- name: cache:package
image: node:12
Expand All @@ -35,10 +48,10 @@ steps:
when:
event: push

- name: test
image: node:12
- name: test:build
image: codercom/nbin:centos
commands:
- yarn test
- yarn test:build

- name: publish:github
image: plugins/github-release
Expand Down Expand Up @@ -69,7 +82,7 @@ steps:
- name: publish:gcs
image: plugins/gcs
settings:
source: gcs_bucket
source: binary-upload
target: codesrv-ci.cdr.sh/
token:
from_secret: gcs-token
Expand All @@ -88,13 +101,25 @@ steps:
- name: cache:restore
image: node:12-alpine
commands:
- apk add libxkbfile-dev libsecret-dev build-base git bash python
- ./scripts/cacher.sh

- name: lint
image: node:12-alpine
commands:
- yarn lint

- name: test
image: node:12-alpine
commands:
- apk add openssl
- yarn test

- name: build
image: node:12-alpine
commands:
- apk add libxkbfile-dev libsecret-dev build-base git bash python
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing so we can preserve cache for the next run'
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing to preserve cache for the next run'

- name: cache:package
image: node:12-alpine
Expand All @@ -113,10 +138,10 @@ steps:
when:
event: push

- name: test
- name: test:build
image: node:12-alpine
commands:
- yarn test
- yarn test:build

- name: publish:github
image: plugins/github-release
Expand All @@ -133,7 +158,7 @@ steps:
- name: publish:gcs
image: plugins/gcs
settings:
source: gcs_bucket
source: binary-upload
target: codesrv-ci.cdr.sh/
token:
from_secret: gcs-token
Expand All @@ -152,13 +177,24 @@ steps:
- name: cache:restore
image: node:12
commands:
- apt update && apt install -y build-essential git libsecret-1-dev libx11-dev libxkbfile-dev
- ./scripts/cacher.sh

- name: lint
image: node:12
commands:
- yarn lint

- name: test
image: node:12
commands:
- yarn test

- name: build
image: node:12
commands:
- apt update && apt install -y build-essential git libsecret-1-dev libx11-dev libxkbfile-dev
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing so we can preserve cache for the next run'
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing to preserve cache for the next run'

- name: cache:package
image: node:12
Expand All @@ -177,10 +213,10 @@ steps:
when:
event: push

- name: test
- name: test:build
image: node:12
commands:
- yarn test
- yarn test:build

- name: publish:github
image: plugins/github-release
Expand Down Expand Up @@ -211,7 +247,7 @@ steps:
- name: publish:gcs
image: plugins/gcs
settings:
source: gcs_bucket
source: binary-upload
target: codesrv-ci.cdr.sh/
token:
from_secret: gcs-token
Expand All @@ -230,13 +266,25 @@ steps:
- name: cache:restore
image: node:12-alpine
commands:
- apk add libxkbfile-dev libsecret-dev build-base git bash python
- ./scripts/cacher.sh

- name: lint
image: node:12-alpine
commands:
- yarn lint

- name: test
image: node:12-alpine
commands:
- apk add openssl
- yarn test

- name: build
image: node:12-alpine
commands:
- apk add libxkbfile-dev libsecret-dev build-base git bash python
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing so we can preserve cache for the next run'
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing to preserve cache for the next run'

- name: cache:package
image: node:12-alpine
Expand All @@ -255,10 +303,10 @@ steps:
when:
event: push

- name: test
- name: test:build
image: node:12-alpine
commands:
- yarn test
- yarn test:build

- name: publish:github
image: plugins/github-release
Expand All @@ -275,134 +323,9 @@ steps:
- name: publish:gcs
image: plugins/gcs
settings:
source: gcs_bucket
source: binary-upload
target: codesrv-ci.cdr.sh/
token:
from_secret: gcs-token
when:
event: tag

---
kind: pipeline
type: docker
name: arm:linux

platform:
arch: arm

steps:
- name: cache:restore
image: node:12
commands:
- ./scripts/cacher.sh

- name: build
image: node:12
commands:
- apt update && apt install -y build-essential git libsecret-1-dev libx11-dev libxkbfile-dev
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing so we can preserve cache for the next run'

- name: cache:package
image: node:12
commands:
- ./scripts/cacher.sh
when:
event: push

- name: cache:push
image: plugins/gcs
settings:
source: cache-upload/
target: codesrv-ci.cdr.sh
token:
from_secret: gcs-token
when:
event: push

- name: test
image: node:12
failure: ignore
commands:
- yarn test

# - name: publish:github
# image: plugins/github-release
# settings:
# api_key:
# from_secret: github_token
# files: release/*.tar.gz
# draft: true
# overwrite: true
# title: ${DRONE_TAG}
# when:
# event: tag

# - name: publish:docker
# image: plugins/docker
# settings:
# username:
# from_secret: docker_user
# password:
# from_secret: docker_pass
# repo: codercom/code-server
# dockerfile: scripts/ci.dockerfile
# tags:
# - ${DRONE_TAG}-arm
# when:
# event: tag

---
kind: pipeline
type: docker
name: arm:alpine

platform:
arch: arm

steps:
- name: cache:restore
image: node:12-alpine
commands:
- ./scripts/cacher.sh

- name: build
image: node:12-alpine
commands:
- apk add libxkbfile-dev libsecret-dev build-base git bash python
- timeout 50m ./scripts/ci.bash || echo 'Timed out or failed; continuing so we can preserve cache for the next run'

- name: cache:package
image: node:12-alpine
commands:
- ./scripts/cacher.sh
when:
event: push

- name: cache:push
image: plugins/gcs
settings:
source: cache-upload/
target: codesrv-ci.cdr.sh
token:
from_secret: gcs-token
when:
event: push

- name: test
image: node:12-alpine
failure: ignore
commands:
- yarn test

# - name: publish:github
# image: plugins/github-release
# failure: ignore
# settings:
# api_key:
# from_secret: github_token
# files: release/*.tar.gz
# draft: true
# overwrite: true
# title: ${DRONE_TAG}
# when:
# event: tag
6 changes: 6 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
root = true

[*]
indent_style = space
trim_trailing_whitespace = true
indent_size = 2
39 changes: 39 additions & 0 deletions .eslintrc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
parser: "@typescript-eslint/parser"
env:
browser: true
es6: true # Map, etc.
mocha: true
node: true

parserOptions:
ecmaVersion: 2018
sourceType: module
ecmaFeatures:
jsx: true

extends:
- eslint:recommended
- plugin:@typescript-eslint/recommended
- plugin:import/recommended
- plugin:import/typescript
- plugin:react/recommended
- plugin:prettier/recommended
- prettier # Removes eslint rules that conflict with prettier.
- prettier/@typescript-eslint # Remove conflicts again.

plugins:
- react-hooks

# Need to set this explicitly for the eslint-plugin-react.
settings:
react:
version: detect

rules:
# For overloads.
no-dupe-class-members: off

# https://www.npmjs.com/package/eslint-plugin-react-hooks
react-hooks/rules-of-hooks: error

react/prop-types: off # We use Typescript to verify prop types.
17 changes: 13 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
*.tsbuildinfo
.cache
binaries
binary-upload
build
cache-upload
dist
dist-build
node_modules
/build
/release
/binaries
/lib
out
out-build
release
source
yarn-cache
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "lib/vscode"]
path = lib/vscode
url = https://github.com/microsoft/vscode
Loading