Compare commits

...

1573 Commits

Author SHA1 Message Date
XIN_____
e90504b8cf
Clarify error handlers are final and don't call next() (#7646) 2026-01-27 16:05:25 -09:00
Olivier Benz
3c0b449c6e
Update Code to 1.108.2 (#7645) 2026-01-26 11:46:38 -09:00
dependabot[bot]
7f2112c1c9
chore: bump express from 5.1.0 to 5.2.0 (#7586) 2026-01-23 13:50:38 -09:00
dependabot[bot]
7ec0be6995
chore: bump prettier-plugin-sh from 0.14.0 to 0.18.0 (#7551) 2026-01-23 12:46:37 -09:00
dependabot[bot]
1dd0741c94
chore: bump js-yaml from 3.14.1 to 3.14.2 in /test (#7566) 2026-01-23 12:45:39 -09:00
dependabot[bot]
aa210cdad4
chore: bump dawidd6/action-download-artifact from 11 to 12 (#7615) 2026-01-23 12:43:59 -09:00
dependabot[bot]
9e97cd1278
chore: bump js-yaml from 4.1.0 to 4.1.1 (#7563) 2026-01-23 12:41:43 -09:00
dependabot[bot]
352636408c
chore: bump github/codeql-action from 3 to 4 (#7546) 2026-01-23 12:39:40 -09:00
dependabot[bot]
f223d301a2
chore: bump argon2 in /test to 0.44.0 (#7636)
This also removes a sub-dependency on tar, among others.
2026-01-23 12:37:53 -09:00
dependabot[bot]
809abfbbe0
chore: bump argon2 from 0.31.2 to 0.44.0 (#7635)
This also removes a sub-dependency on tar, among others.
2026-01-23 12:36:30 -09:00
dependabot[bot]
f5dc5436da
chore: bump qs from 6.14.0 to 6.14.1 (#7618) 2026-01-23 12:25:07 -09:00
dependabot[bot]
94a533e540
chore: bump lodash from 4.17.21 to 4.17.23 in /test (#7639) 2026-01-23 12:15:23 -09:00
Olivier Benz
ba588b4709
Update Code to 1.108.1 (#7634) 2026-01-16 17:02:27 -09:00
Asher
3368ef91ef
Update Helm chart with 4.108.0 2026-01-12 17:24:19 -09:00
Asher
65d6b9a4c4
Update changelog for 4.107.0, 4.107.1, and 4.108.0 2026-01-12 10:30:52 -09:00
Asher
e352745c4c
Clarify VS Code web vs vscode.dev in bug template 2026-01-12 10:27:22 -09:00
Olivier Benz
9233f04383
Update Code to 1.108.0 (#7629) 2026-01-09 10:42:24 -09:00
Olivier Benz
8c077bf605
Update Code to 1.107.1 (#7606) 2026-01-08 12:41:01 -09:00
egvimo
41f7ba903f
Use /healthz and reuse labels in Helm chart (#7604) 2026-01-08 12:40:04 -09:00
Asher
ac7322ce56
Update changelog 2025-12-11 16:33:07 -09:00
Timon Fiedler
68ac95b84e
Add cookie-suffix flag (#7590) 2025-12-11 16:23:09 -09:00
Vladimir Mladenovic
0de7cf5679
Add configurable authorization header to marketplace API calls (#7596) 2025-12-11 16:02:42 -09:00
Olivier Benz
ea9a3a5ab2
Update Code to 1.107.0 (#7599) 2025-12-11 16:02:11 -09:00
Asher
472bf8a5fa
Remove homebrew step
It has been broken for a long time (No available formula with the name
"code-server") but it looks like they have their own bot publishing
updates anyway.
2025-12-02 13:38:27 -09:00
dependabot[bot]
eccb1eb537
chore: bump actions/setup-node from 4 to 6 (#7550) 2025-12-02 13:04:45 -09:00
Asher
f128a7ac11
Update actionlint to 1.7.9 2025-12-01 12:55:13 -09:00
Asher
80996d2e08
Add VS Code web to the bug template 2025-12-01 12:49:28 -09:00
dependabot[bot]
9819b91c74
chore: bump actions/checkout from 5 to 6 (#7585) 2025-12-01 12:47:25 -09:00
Olivier Benz
2ed1098c1e
Update Code to 1.106.3 (#7583) 2025-12-01 11:52:45 -09:00
Asher
85042e2910
Note settings change from VS Code web and Codespaces 2025-11-25 14:39:16 -09:00
Asher
904942a194
Increase build timeout 2025-11-19 14:02:53 -09:00
Olivier Benz
9a24e467b2
Update Code to 1.106.2 (#7571) 2025-11-19 12:54:38 -09:00
Olivier Benz
24a777491b
Update Code to 1.106.1 (#7570) 2025-11-19 09:09:30 -09:00
Asher
93c1f4f10c
Update macOS runner
Seems macos-13 is being deprecated.
2025-11-18 13:25:39 -09:00
Olivier Benz
339c3926c2
Update Code to 1.106.0 (#7569) 2025-11-18 11:21:41 -09:00
dependabot[bot]
897b5f13bc
chore: bump playwright and @playwright/test in /test (#7534) 2025-10-28 16:14:42 -08:00
SuitDeer
282f74d9f5
Update Node.js version in Android docs from 18 to 22 (#7542) 2025-10-28 16:14:17 -08:00
dependabot[bot]
7a2a5eb055
chore: bump eslint from 9.32.0 to 9.36.0 (#7513) 2025-10-28 16:13:34 -08:00
dependabot[bot]
af397f71e2
chore: bump globals from 16.1.0 to 16.4.0 (#7511) 2025-10-28 16:13:15 -08:00
dependabot[bot]
9d89b17fd7
chore: bump express and @types/express (#7510) 2025-10-28 16:12:45 -08:00
dependabot[bot]
35e7b09a85
chore: bump actions/checkout from 4 to 5 (#7508) 2025-10-28 16:12:00 -08:00
dependabot[bot]
7beb05d04f
chore: bump aquasecurity/trivy-action from 0.32.0 to 0.33.1 (#7507) 2025-10-28 16:11:42 -08:00
dependabot[bot]
add51d5c5b
chore: bump actions/download-artifact from 4 to 5 (#7506) 2025-10-28 16:11:23 -08:00
Andrew Baldwin
db8a41bce1
Add idle timeout (#7539) 2025-10-28 16:10:56 -08:00
Olivier Benz
811ec6c1d6
Update Code to 1.105.1 (#7531) 2025-10-17 14:32:32 -08:00
Olivier Benz
30321abfcd
Update Code to 1.105.0 (#7523) 2025-10-14 13:26:57 -08:00
Olivier Benz
cd40509fbb
Update Code to 1.104.3 (#7515) 2025-10-03 10:48:01 -08:00
Asher
9fd98d58e7
Release v4.104.1 and v4.104.2 2025-10-01 14:15:07 -08:00
Olivier Benz
b0992ddb3e
Update Code to 1.104.2 (#7503) 2025-09-26 10:36:08 -08:00
Olivier Benz
af19dedfa9
Update Code to 1.104.1 (#7495) 2025-09-19 10:01:30 -08:00
Asher
d1066af558
Release v4.104.0 2025-09-15 14:36:47 -08:00
Olivier Benz
ba774d989b
Update Code to 1.104.0 (#7488) 2025-09-12 12:41:54 -08:00
Jinvien
1a7b770f5b
Fix installing extensions from the Open VSX marketplace (#7479)
Open VSX uses a non-standard format for the `/latest` URL which must be added to the gallery config.
2025-09-11 14:26:49 -08:00
Anthony
626145cf66
Allow custom annotation to deployment (#7481) 2025-09-11 14:24:57 -08:00
Asher
b59a4f7366
Release v4.103.1 and v4.103.2 2025-08-28 11:55:58 -08:00
Olexandr88
54b33a75e0
Add Discord link to readme (#7465) 2025-08-25 10:32:11 -08:00
Olivier Benz
3c5deac16d
Update Code to 1.103.2 (#7463) 2025-08-25 09:32:20 -08:00
Olivier Benz
fbaadbcfbc
Update Code to 1.103.1 (#7459) 2025-08-15 12:31:17 -08:00
Asher
2bbb6e8cca
Release v4.103.0 2025-08-12 14:31:17 -08:00
Olivier Benz
f1236d80b9
Update Code to 1.103.0 (#7458) 2025-08-08 17:10:23 -08:00
dependabot[bot]
b27d982c67
chore: bump prettier from 3.4.2 to 3.6.2 (#7407) 2025-08-04 12:46:32 -08:00
Asher
3f23840756 Remove import from express-serve-static-core
Mostly because express-serve-static-core is an implicit dependency.  We
could make it explicit, but the type we imported from it is just an
alias for qs.ParsedQs anyway.
2025-08-04 12:26:46 -08:00
Asher
e54467fb85 Run npm audit fix 2025-08-04 12:26:46 -08:00
Asher
8f738d29f2 Remove unused supertest dependency 2025-08-04 12:26:46 -08:00
Asher
5c0ff5013f Remove direct safe-buffer dependency
We do not use it directly.
2025-08-04 12:26:46 -08:00
dependabot[bot]
8a378df6e5
chore: bump eslint-import-resolver-typescript from 3.8.3 to 4.4.4 (#7404) 2025-08-04 11:37:04 -08:00
dependabot[bot]
a7e77ce4af
chore: bump dawidd6/action-download-artifact from 10 to 11 (#7409)
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 10 to 11.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v10...v11)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '11'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-04 11:35:59 -08:00
dependabot[bot]
794def9a77
chore: bump on-headers and compression (#7427)
Bumps [on-headers](https://github.com/jshttp/on-headers) to 1.1.0 and updates ancestor dependency [compression](https://github.com/expressjs/compression). These dependencies need to be updated together.


Updates `on-headers` from 1.0.2 to 1.1.0
- [Release notes](https://github.com/jshttp/on-headers/releases)
- [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md)
- [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0)

Updates `compression` from 1.8.0 to 1.8.1
- [Release notes](https://github.com/expressjs/compression/releases)
- [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/compression/compare/1.8.0...v1.8.1)

---
updated-dependencies:
- dependency-name: on-headers
  dependency-version: 1.1.0
  dependency-type: indirect
- dependency-name: compression
  dependency-version: 1.8.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-04 11:33:51 -08:00
Asher
b5a2ce2522
Use error handler in session server (#7455) 2025-08-04 11:05:48 -08:00
dependabot[bot]
bc15fa461c
chore: bump form-data in /test (#7430)
---
updated-dependencies:
- dependency-name: form-data
  dependency-version: 4.0.4
  dependency-type: indirect
- dependency-name: form-data
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-04 10:31:50 -08:00
dependabot[bot]
1805daed07
chore: bump aquasecurity/trivy-action from 0.31.0 to 0.32.0 (#7450)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.31.0 to 0.32.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](76071ef0d7...dc5a429b52)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-version: 0.32.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-04 10:31:21 -08:00
Olivier Benz
6f3d0a7e5a
Update Code to 1.102.3 (#7444) 2025-07-30 11:28:34 -08:00
Asher
b1ad6ffcb9
Release v4.102.2 2025-07-24 14:08:12 -08:00
Olivier Benz
9f6d18ea26
Update Code to 1.102.2 (#7436) 2025-07-24 12:07:27 -08:00
Sheldon Tsen
fe7db4900a
Update values.yaml to better support dind (#7431) 2025-07-22 09:17:44 -08:00
Asher
84728f0b21
Release v4.102.1 2025-07-17 13:25:16 -08:00
Asher
aaf2d91a21
Deleted unused and outdated afdesign file 2025-07-17 13:25:15 -08:00
Olivier Benz
47e9d43922
Update Code to 1.102.1 (#7424) 2025-07-17 10:55:37 -08:00
Asher
f26309a23c
Release v4.102.0 2025-07-16 18:56:42 -08:00
Asher
0f9a0e8fb3
Revert escaping for i18n strings
Looks like the library already escapes, so we were getting double
escaping.
2025-07-16 18:10:11 -08:00
Asher
4029c1ec8f
Use Debian archives
Looks like buster has reached the end of its life, but updating to
bullseye would increase the glibc version.
2025-07-15 15:03:43 -08:00
dependabot[bot]
bbe1b7fecb
chore: bump i18next from 23.16.4 to 25.3.0 (#7406)
Bumps [i18next](https://github.com/i18next/i18next) from 23.16.4 to 25.3.0.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.16.4...v25.3.0)

---
updated-dependencies:
- dependency-name: i18next
  dependency-version: 25.3.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-15 12:40:04 -08:00
dependabot[bot]
740a2d3aa3
chore: bump aquasecurity/trivy-action from 0.30.0 to 0.31.0 (#7408)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.30.0 to 0.31.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](6c175e9c40...76071ef0d7)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-version: 0.31.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-15 12:39:08 -08:00
Alex Strick van Linschoten
92fca0dcc3
Add language customization flag (#7374)
This allows you to customize any string (that has a translation) or add your own translations.
2025-07-15 12:38:27 -08:00
Frank Lemanschik
8b3d9b9e0a
Use native node -p to get exec path (#7420) 2025-07-15 12:08:37 -08:00
Olivier Benz
cdac5bff64
Update Code to 1.102.0 (#7418)
* Update Code to 1.102.0
* Increase maximum memory for building
2025-07-15 12:04:46 -08:00
Asher
70be9fe541
Add non-maskable PWA icons
It seems Chromium cannot use maskable icons.  It complains that the
"purpose" must contain "any", however maskable icons are not suitable
for the "any" purpose.

So, add pre-masked icons to be used for the "any" purpose.
2025-07-07 14:40:01 -08:00
Asher
729456b10d
Release v4.101.2 2025-07-07 14:20:38 -08:00
Asher
aff005e196
Update Code to 1.101.2 2025-06-25 11:43:13 -08:00
Asher
53dccbb5ca
Report if using hashed-password from config 2025-06-25 11:20:25 -08:00
Asher
1b1440ffd2
Update logo 2025-06-25 10:32:43 -08:00
Asher
c5c764d78f
Do not use module type for service worker
It seems that this causes browser to not send cookies, which can result
in a 401.

Fixes #7389.
2025-06-25 10:32:35 -08:00
Asher
3a8fbeb4da
Release v4.101.0 and v4.101.1 2025-06-25 10:32:09 -08:00
Olivier Benz
bd34cd510f
Update Code to 1.101.1 (#7383) 2025-06-20 16:08:36 -08:00
Asher
27a112c3a7
Upgrade brace-expansion sub-dependency
Courtesy of `npm audit fix`.
2025-06-16 17:00:51 -08:00
dependabot[bot]
74cc50d5e6
chore: bump qs from 6.13.0 to 6.14.0 (#7363)
Bumps [qs](https://github.com/ljharb/qs) from 6.13.0 to 6.14.0.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.13.0...v6.14.0)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-16 15:32:23 -08:00
dependabot[bot]
85ee441006
chore: bump typescript from 5.6.2 to 5.8.3 (#7335)
* chore: bump typescript from 5.6.2 to 5.8.3

Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.6.2 to 5.8.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.2...v5.8.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-version: 5.8.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* as T

* Update JSON error

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Asher <ash@coder.com>
2025-06-16 15:32:00 -08:00
dependabot[bot]
a56769b2c3
chore: bump heyhusen/archlinux-package-action from 2.2.1 to 2.4.0 (#7362)
Bumps [heyhusen/archlinux-package-action](https://github.com/heyhusen/archlinux-package-action) from 2.2.1 to 2.4.0.
- [Release notes](https://github.com/heyhusen/archlinux-package-action/releases)
- [Changelog](https://github.com/heyhusen/archlinux-package-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heyhusen/archlinux-package-action/compare/v2.2.1...v2.4.0)

---
updated-dependencies:
- dependency-name: heyhusen/archlinux-package-action
  dependency-version: 2.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-16 13:07:03 -08:00
dependabot[bot]
05d8904ec5
chore: bump dawidd6/action-download-artifact from 9 to 10 (#7361)
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 9 to 10.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v9...v10)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '10'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-16 13:06:23 -08:00
dependabot[bot]
3669c96c9c
chore: bump @types/compression from 1.7.5 to 1.8.0 (#7364)
Bumps [@types/compression](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/compression) from 1.7.5 to 1.8.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/compression)

---
updated-dependencies:
- dependency-name: "@types/compression"
  dependency-version: 1.8.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-16 13:05:03 -08:00
dependabot[bot]
37357b0142
chore: bump typescript-eslint from 8.29.0 to 8.33.0 (#7365)
Bumps [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) from 8.29.0 to 8.33.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.33.0/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-version: 8.33.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-16 13:04:33 -08:00
Olivier Benz
405eb0f511
Update Code to 1.101.0 (#7376) 2025-06-16 13:03:47 -08:00
Jakub Domeracki
6e26dad1b1
fix: update GitHub Actions Runner images (#7379) 2025-06-16 12:04:57 -08:00
Asher
1671bf1c18
Release v4.100.3 2025-06-03 13:10:14 -08:00
Asher
1face85ad9
Sort some imports 2025-06-03 13:10:13 -08:00
Asher
9ec786b62a
Ask not to put "latest" in bug report
Maybe this will help...
2025-06-03 13:10:11 -08:00
Olivier Benz
409c64e0df
Update Code to 1.100.3 (#7367) 2025-06-03 11:06:54 -08:00
dependabot[bot]
35e78fe35b
chore: bump globals from 15.14.0 to 16.0.0 (#7333)
Bumps [globals](https://github.com/sindresorhus/globals) from 15.14.0 to 16.0.0.
- [Release notes](https://github.com/sindresorhus/globals/releases)
- [Commits](https://github.com/sindresorhus/globals/compare/v15.14.0...v16.0.0)

---
updated-dependencies:
- dependency-name: globals
  dependency-version: 16.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-19 12:09:04 -08:00
Asher
cade03e321
Release v4.100.1 and v4.100.2 2025-05-19 10:34:54 -08:00
Olivier Benz
9dd999ba78
Update Code to 1.100.2 (#7348) 2025-05-15 11:00:20 -08:00
Olivier Benz
1aca01f8d8
Update Code to 1.101 (#7347) 2025-05-13 14:07:46 -08:00
Asher
e05219d9c0
Release v4.100.0 2025-05-12 11:35:42 -08:00
Asher
d0e20d514d
Update devcontainer feature link
I think we meant to link to the feature readme rather than the general
repo readme.
2025-05-08 14:24:05 -08:00
Asher
9bd3b83ef5
Fix port parseInt error handling
parseInt returns NaN rather than throwing.
2025-05-08 14:21:17 -08:00
Olivier Benz
2c9b4e7fd5
Update Code to 1.100.0 (#7343) 2025-05-08 14:19:03 -08:00
Bartek Gatz
7af90ea623
Mention code-server devcontainer feature (#7342) 2025-05-06 14:49:38 -08:00
dependabot[bot]
8b55b5003d
chore: bump eslint from 9.23.0 to 9.25.1 (#7332)
Bumps [eslint](https://github.com/eslint/eslint) from 9.23.0 to 9.25.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.23.0...v9.25.1)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.25.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-06 11:34:30 -08:00
dependabot[bot]
e5b8d447e5
chore: bump @types/semver from 7.5.8 to 7.7.0 2025-05-06 11:34:09 -08:00
Asher
c8257a3074 Fix repeatable flags in config
Fixes #6149.
2025-05-06 11:28:45 -08:00
Asher
0c72b20fa7 Place locale and abs-proxy-base-path in correct interfaces 2025-05-06 11:28:45 -08:00
Asher
ea2caf00ac Allow setting trusted domains for links at run-time
It can be set either:

1. In the product.json (normally the product.json is embedded during the
   build and not read at run-time).
2. With the --link-protection-trusted-domains flag.
2025-05-06 11:28:45 -08:00
Asher
3f2e3340d8
Release v4.99.4 2025-05-05 11:56:00 -08:00
Kyle Carberry
47d6d3ada5
fix: parse part in path proxy (#7337) 2025-05-02 10:08:18 -08:00
Asher
dded82bb47
Release v4.99.3 2025-04-28 14:28:51 -08:00
Asher
5d5b7b1944
Use ubuntu-latest in Docker publish step
Seems 20.04 has been removed.
2025-04-17 10:46:50 -08:00
Olivier Benz
c36b2d3edd
Update Code to 1.99.3 (#7314) 2025-04-16 14:18:00 -08:00
dependabot[bot]
3b7634c578
chore: bump @babel/runtime from 7.25.7 to 7.27.0 (#7312)
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.25.7 to 7.27.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.0/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-14 12:03:25 -08:00
partev
ec0899a81b
Remove extra closing parentheses from docs (#7309) 2025-04-14 11:27:44 -08:00
helgehatt
bbf2e24648
Add skip-auth-preflight flag to allow OPTIONS requests through proxy (#7284) 2025-04-14 11:27:02 -08:00
dependabot[bot]
9045919d2b
chore: bump robinraju/release-downloader from 1.11 to 1.12 (#7289)
Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.11 to 1.12.
- [Release notes](https://github.com/robinraju/release-downloader/releases)
- [Commits](https://github.com/robinraju/release-downloader/compare/v1.11...v1.12)

---
updated-dependencies:
- dependency-name: robinraju/release-downloader
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-14 11:01:03 -08:00
dependabot[bot]
cb29e65982
chore: bump proxy-agent from 6.4.0 to 6.5.0 (#7294)
Bumps [proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/proxy-agent) from 6.4.0 to 6.5.0.
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/proxy-agent@6.5.0/packages/proxy-agent)

---
updated-dependencies:
- dependency-name: proxy-agent
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-14 11:00:47 -08:00
dependabot[bot]
7eb8f4be87
chore: bump @eslint/eslintrc from 3.2.0 to 3.3.1 (#7292)
Bumps [@eslint/eslintrc](https://github.com/eslint/eslintrc) from 3.2.0 to 3.3.1.
- [Release notes](https://github.com/eslint/eslintrc/releases)
- [Changelog](https://github.com/eslint/eslintrc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslintrc/compare/v3.2.0...v3.3.1)

---
updated-dependencies:
- dependency-name: "@eslint/eslintrc"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-14 10:58:54 -08:00
dependabot[bot]
cd4d1b614d
chore: bump eslint from 9.13.0 to 9.23.0 (#7291)
Bumps [eslint](https://github.com/eslint/eslint) from 9.13.0 to 9.23.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.13.0...v9.23.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-14 10:58:42 -08:00
dependabot[bot]
5051c0f9e4
chore: bump typescript-eslint from 8.12.2 to 8.29.0 (#7290)
Bumps [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) from 8.12.2 to 8.29.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.29.0/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-14 10:58:33 -08:00
dependabot[bot]
b07335a0f1
chore: bump aquasecurity/trivy-action from 0.29.0 to 0.30.0 (#7288)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.29.0 to 0.30.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](18f2510ee3...6c175e9c40)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-14 10:57:40 -08:00
Asher
e3c09efcbc
Release v4.99.2 2025-04-11 11:42:17 -08:00
Olivier Benz
e0c960b30e
Update Code to 1.99.2 (#7306) 2025-04-10 11:13:29 -08:00
Asher
55b311a954
Release v4.99.1 2025-04-08 13:36:03 -08:00
Olivier Benz
0a92b76304
Update Code to 1.99.1 (#7304) 2025-04-08 10:51:30 -08:00
Asher
400ac7b8d0
Release v4.99.0 2025-04-07 16:52:11 -08:00
Olivier Benz
53722c5361
Update Code to 1.99.0 (#7300) 2025-04-04 10:22:23 -08:00
Olivier Benz
e2c489dd00 Update Code to 1.98.2 2025-03-14 10:58:50 -08:00
Olivier Benz
e1c84998d7 Update Code to 1.98.1 2025-03-12 10:30:45 -08:00
Asher
cc3c22deee
Build with newer version of Python
We are getting an issue importing __future__ from annotations in one
case and "invalid syntax" in another with `if CC :=`.

There does not seem to be a reason to maintain a separate step for the
amd64 build since the glibc version is the same.
2025-03-07 12:25:35 -09:00
Asher
727555b414
Skip e2e when only changing workflows 2025-03-07 12:13:12 -09:00
Asher
4b7bca38e2 Fix routing for Express 5 2025-03-06 15:28:07 -09:00
Asher
50c3e4bb1b Add 4.97.2 to the changelog 2025-03-06 15:28:07 -09:00
Asher
2809245dda Remove long-unused internal plugin system
We are trying to update Express to fix a vulnerability.

We would have to update the plugins as well, but since we are no longer
using the plugin system, we can just delete it instead.
2025-03-06 15:28:07 -09:00
dependabot[bot]
949aed1cef Update to Express 5 2025-03-06 15:28:07 -09:00
dependabot[bot]
db5f99dc78
chore: bump dawidd6/action-download-artifact from 8 to 9 (#7241)
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 8 to 9.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v8...v9)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-06 11:34:15 -09:00
dependabot[bot]
fd761b4e8b
chore: bump eslint-import-resolver-typescript from 3.6.3 to 3.8.3 (#7240)
Bumps [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) from 3.6.3 to 3.8.3.
- [Release notes](https://github.com/import-js/eslint-import-resolver-typescript/releases)
- [Changelog](https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-import-resolver-typescript/compare/v3.6.3...v3.8.3)

---
updated-dependencies:
- dependency-name: eslint-import-resolver-typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-06 11:34:04 -09:00
dependabot[bot]
611798650f
chore: bump compression from 1.7.4 to 1.8.0 (#7236)
Bumps [compression](https://github.com/expressjs/compression) from 1.7.4 to 1.8.0.
- [Release notes](https://github.com/expressjs/compression/releases)
- [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/compression/compare/1.7.4...1.8.0)

---
updated-dependencies:
- dependency-name: compression
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-06 11:32:55 -09:00
dependabot[bot]
0db3cbe4e7
chore: bump semver from 7.6.3 to 7.7.1 (#7238)
Bumps [semver](https://github.com/npm/node-semver) from 7.6.3 to 7.7.1.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v7.6.3...v7.7.1)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-06 11:32:37 -09:00
Olivier Benz
31c211aded
Update Code to 1.98.0 (#7249)
* Update Code to 1.98.0

* Avoid sudo when launching caddy

It is erroring about needing a password, but also do we even need to run
this as root considering we are not binding to privileged ports?

---------

Co-authored-by: Asher <ash@coder.com>
2025-03-06 11:32:11 -09:00
Olivier Benz
6f8493ebc6
Delete user 1000 in Docker before adding coder user (#7235)
- Resolve https://github.com/coder/code-server/issues/7232
2025-03-06 11:16:42 -09:00
Olivier Benz
34b8d2ed69
Update Code to 1.97.2 (#7205) 2025-02-13 15:27:27 -09:00
Olivier Benz
3172cb16b8
Update Code to 1.97.1 (#7202) 2025-02-13 01:01:51 -09:00
SXX
9b89774ff6
Add back macOS amd64 release (#7196) 2025-02-12 15:17:19 -09:00
dependabot[bot]
626d2cf1c3
chore: bump @types/node from 20.16.10 to 20.17.17 (#7201)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.16.10 to 20.17.17.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-12 15:15:32 -09:00
dependabot[bot]
ebf2df63f5
chore: bump dawidd6/action-download-artifact from 6 to 8 (#7191)
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 6 to 8.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v6...v8)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-12 15:12:31 -09:00
mickkael
ac65db2c88
fix replicas and existingSecret. bump to 3.25.3 (#7187) 2025-02-12 15:10:08 -09:00
bilogic
33aa21fd0f
Softer dark mode (#7178) 2025-02-12 15:08:39 -09:00
Olivier Benz
d23d1a9541
Update Code to 1.97.0 (#7199)
* Update Code to 1.97.0
* Update flake
This is to get a newer version of Node since we need > 20.18.1.
* Hijack new base path var
* Update test path matchers
2025-02-12 14:34:05 -09:00
Jan Larwig
a6fad66e5e
doc: update upstream documentation urls (#7165) 2025-02-11 11:24:31 -09:00
ChenPi11
18cd97dc12
fix: invalid ESM module path on Windows (#7162) 2025-02-11 11:16:40 -09:00
dependabot[bot]
ef713bde58
chore: bump globals from 15.10.0 to 15.14.0 (#7146)
Bumps [globals](https://github.com/sindresorhus/globals) from 15.10.0 to 15.14.0.
- [Release notes](https://github.com/sindresorhus/globals/releases)
- [Commits](https://github.com/sindresorhus/globals/compare/v15.10.0...v15.14.0)

---
updated-dependencies:
- dependency-name: globals
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-11 11:12:36 -09:00
dependabot[bot]
1c3fcf2a83
chore: bump @eslint/eslintrc from 3.1.0 to 3.2.0 (#7100)
Bumps [@eslint/eslintrc](https://github.com/eslint/eslintrc) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/eslint/eslintrc/releases)
- [Changelog](https://github.com/eslint/eslintrc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslintrc/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: "@eslint/eslintrc"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-11 11:12:14 -09:00
dependabot[bot]
96800cc521
chore: bump aquasecurity/trivy-action from 0.28.0 to 0.29.0 (#7097)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.28.0 to 0.29.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](915b19bbe7...18f2510ee3)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-11 11:11:50 -09:00
dependabot[bot]
0b7c044857
chore: bump codecov/codecov-action from 4 to 5 (#7096)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4 to 5.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v4...v5)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-11 11:11:21 -09:00
Asher
7cc61ab1f4
Release v4.96.4 2025-01-20 15:33:32 -09:00
Olivier Benz
b7ef8f9bd7
Update Code to 1.96.4 (#7170) 2025-01-17 13:46:30 -09:00
Olivier Benz
b60985e53b
Update Code to 1.96.3 (#7164) 2025-01-13 11:37:17 -09:00
Jérôme Petazzoni
b18a647d0a
Update Alpine instructions (#7156)
While trying to set up code-server on Alpine, I ran into build errors. To solve them, I had to add Kerberos development libs. Also, it looks like npm config doesn't work in recent version of Node and doesn't seem to be necessary. These instructions were tested in the Docker `node:20-alpine` image.
2025-01-13 11:18:53 -09:00
Asher
f4f02655a1
Release v4.96.2 2024-12-20 14:52:05 -09:00
Olivier Benz
08cbdfbdf1
Update Code to 1.96.2 (#7133) 2024-12-19 12:19:11 -09:00
Asher
339a448471
Release v4.96.1 2024-12-18 14:25:18 -09:00
Asher
272e28abc6
Set GITHUB_TOKEN on macOS job
Trying to see if this will help with the 403s trying to download
ripgrep.
2024-12-18 13:42:37 -09:00
Asher
c187e5e782
Release v4.95.3 2024-12-18 13:42:36 -09:00
qupig
318c582043
style: add dark theme color scheme (#7118)
hen the user's browser does not support `light-dark`, fall back to the light theme color scheme.
2024-12-18 12:37:53 -09:00
Olivier Benz
db311e6ff5
Update Code to 1.96.1 (#7130) 2024-12-18 11:35:24 -09:00
Olivier Benz
ccd2a30dfc
Update Code to 1.96.0 (#7112) 2024-12-13 09:13:59 -09:00
Asher
99e1f63d76
chore: pin prettier to version 3.4.2 2024-12-13 09:05:30 -09:00
qupig
25c2183be0 ci: fix prettier check job
Use prettier version specified in `package.json` instead of fixed versions from third-party workflows.
2024-12-12 20:13:22 +00:00
qupig
8f00c2e289 chore: ignore prettier 3.4.2 code format commit 2024-12-12 19:01:09 +00:00
qupig
9b0340a092 chore: format code to prettier 3.4.2 2024-12-12 18:44:10 +00:00
qupig
ccded68cd4 chore: update and fixed prettier to 3.4.2 2024-12-12 18:41:49 +00:00
Theodore Herzfeld
4af06de4c3
Fix extraInitContainers conditional (#7085) 2024-11-22 22:38:56 +00:00
Asher
b0c935a6e0
Fix v4.59 changelog links 2024-11-15 10:32:14 -09:00
Olivier Benz
912a7a9d89
Update Code to 1.95.3 (#7078) 2024-11-15 10:30:56 -09:00
Asher
9a5726f250
Release v4.95.2 and v4.95.1 2024-11-12 09:35:12 -09:00
dependabot[bot]
fc97e248c3
chore: bump aquasecurity/trivy-action from 0.24.0 to 0.28.0 (#7060)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.24.0 to 0.28.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](6e7b7d1fd3...915b19bbe7)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 10:12:29 -09:00
Olivier Benz
fff3b896de
Update Code to 1.95.2 (#7072) 2024-11-08 10:12:02 -09:00
Asher
578b5f22c4
Remove AUR dependency on npm
It pulls a release from GitHub, not npm.
2024-11-06 13:00:40 -09:00
Asher
2c1981bfb9
Fix npm publish
Unlike yarn publish, there is no --non-interactive and you cannot
specify a directory, you have to move into it first.
2024-11-06 12:57:57 -09:00
Asher
344df3875f
Fix cli being ran twice
server-main.js runs itself outside a code-server context, which is
determined using the CODE_SERVER_PARENT_PID environment variable.  This
is set by the wrapper, but there is no wrapper when running the
cli (only for the server), so this resulting in the cli running
twice (one self-run on initial import, again when we run spawnCli).

This might fix https://github.com/coder/code-server/issues/7042
2024-11-04 14:59:07 -09:00
Asher
952523f288
Revert accidental newline removal in patch
It makes the patch needlessly noisy.  I am not sure how the line got
deleted in the first place.
2024-11-01 13:03:12 -08:00
Asher
8789dec68b
Update Code version in changelog
We ended up with 1.95.1, not 1.95.0.
2024-11-01 13:01:08 -08:00
dependabot[bot]
b7398bad11
chore: bump i18next from 23.15.1 to 23.16.4 (#7061)
Bumps [i18next](https://github.com/i18next/i18next) from 23.15.1 to 23.16.4.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.15.1...v23.16.4)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 12:37:40 -08:00
dependabot[bot]
8194dbf5bc
chore: bump typescript-eslint from 8.8.0 to 8.12.2 (#7062)
Bumps [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) from 8.8.0 to 8.12.2.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.12.2/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 12:37:24 -08:00
dependabot[bot]
2ade2afdc7
chore: bump eslint from 9.12.0 to 9.13.0 (#7063)
Bumps [eslint](https://github.com/eslint/eslint) from 9.12.0 to 9.13.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.12.0...v9.13.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 12:37:09 -08:00
Asher
494a3e0c2b
Update Code to 1.95.1 (#7059)
* Update Code to 1.95.1
* Update Node to 20.18.0
* Update build.yaml to use Ubuntu 22.04
  This is to resolve a gcc error.  Might have to address
  the release step later as well.
* Fix --stdin-to-clipboard
  With the switch to esm, the fs require is failing.  fs is already
  imported, so we can just use it anyway.
* Fix mangled exports
* Update CSP hashes
2024-11-01 12:35:53 -08:00
xfl12345
dd2e9fce27
Fix user rename when restarting container (#7012) 2024-10-18 14:57:08 -08:00
Asher
bea906f90b
Install python before npm ci 2024-10-18 11:36:40 -08:00
Asher
15752526bd
Install python3 in cross-compile container
Unsure why this is suddenly missing.
2024-10-18 10:38:44 -08:00
Asher
7c298653f1
Fix import of server-main.js from main
Neglected to update this import when fixing the other.
2024-10-18 10:07:05 -08:00
Olivier Benz
fc6064dcd3
Update Code to 1.94.2 (#7026)
* Update Code to 1.94.2

* Convert from yarn to npm

This is to match VS Code.  We were already partially using npm for the
releases so this is some nice alignment.

* Update caniuse-lite

This was complaining on every unit test.

* Update eslint

I was having a bunch of dependency conflicts and eslint seemed to be the
culprit so I just removed it and set it up again, since it seems things
have changed quite a bit.

* Update test dependencies

I was getting oom when running the unit tests...updating seems to work.

* Remove package.json `scripts` property in release

The new pre-install script was being included, which is dev-only.

This was always the intent; did not realize jq's merge was recursive.

* Remove jest and devDependencies in release as well

* Update test extension dependencies

This appears to be conflicting with the root dependencies.

* Fix playwright exec

npm does not let you run binaries like yarn does, as far as I know.

* Fix import of server-main.js

* Fix several tests by waiting for selectors
2024-10-17 20:32:21 -08:00
Asher
6b4b3e0c89
v4.93.1 2024-10-04 15:31:14 -08:00
dependabot[bot]
13d4cd6489
chore: bump @types/node from 20.14.2 to 20.16.10 (#7020)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.2 to 20.16.10.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-03 00:13:46 +00:00
dependabot[bot]
a0c2780c50
chore: bump typescript from 5.5.2 to 5.6.2 (#7021)
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.5.2 to 5.6.2.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.5.2...v5.6.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-03 00:09:25 +00:00
dependabot[bot]
aea7ba2a51
chore: bump i18next from 23.14.0 to 23.15.1 (#7019)
Bumps [i18next](https://github.com/i18next/i18next) from 23.14.0 to 23.15.1.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.14.0...v23.15.1)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-02 16:05:13 -08:00
Asher
69df01185c
Revert "chore: bump softprops/action-gh-release from 1 to 2 (#6740)"
This reverts commit 1abb2ee567d8081d9e8935e1193b2e31f0d8e834.

Trying to see if this fixes the release making separate drafts instead
of a single draft.
2024-09-19 12:08:43 -08:00
Olivier Benz
3542bd157b
Update Code to 1.93.1 (#6984) 2024-09-19 02:10:46 -08:00
dependabot[bot]
50c6abf3a8
chore: bump micromatch from 4.0.4 to 4.0.8 in /test (#6963)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.4 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.4...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-03 10:25:50 -08:00
Yuchen Shi
9286e0002d
Fix install.sh refusing to download macos-arm64 standalone. (#6968)
* Fix install.sh refusing to download macos-arm64 standalone.

* Update tests for macos-arm64 and amd64.
2024-09-03 10:25:06 -08:00
dependabot[bot]
90f8135c68
chore: bump tj-actions/changed-files from 44 to 45 (#6972)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 44 to 45.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v44...v45)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-03 10:24:27 -08:00
dependabot[bot]
8dbfe2273b
chore: bump i18next from 23.12.2 to 23.14.0 (#6974)
Bumps [i18next](https://github.com/i18next/i18next) from 23.12.2 to 23.14.0.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.12.2...v23.14.0)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-03 10:22:35 -08:00
dependabot[bot]
e05a3f4ce2
chore: bump qs from 6.12.1 to 6.13.0 (#6973)
Bumps [qs](https://github.com/ljharb/qs) from 6.12.1 to 6.13.0.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.12.1...v6.13.0)

---
updated-dependencies:
- dependency-name: qs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-03 10:21:42 -08:00
dependabot[bot]
e05d88007f
chore: bump ws and @types/ws (#6925)
Bumps [ws](https://github.com/websockets/ws) and [@types/ws](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ws). These dependencies needed to be updated together.

Updates `ws` from 8.17.1 to 8.18.0
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.17.1...8.18.0)

Updates `@types/ws` from 8.5.10 to 8.5.12
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ws)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/ws"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-26 22:40:31 +00:00
dependabot[bot]
534a1866e5
chore: bump micromatch from 4.0.5 to 4.0.8 (#6962)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-26 21:53:43 +00:00
dependabot[bot]
907e583309
chore: bump i18next from 23.11.3 to 23.12.2 (#6926)
Bumps [i18next](https://github.com/i18next/i18next) from 23.11.3 to 23.12.2.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.11.3...v23.12.2)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-26 13:09:42 -08:00
dependabot[bot]
639a005867
chore: bump eslint-plugin-prettier from 5.1.3 to 5.2.1 (#6927)
Bumps [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) from 5.1.3 to 5.2.1.
- [Release notes](https://github.com/prettier/eslint-plugin-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-plugin-prettier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-plugin-prettier/compare/v5.1.3...v5.2.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-26 13:09:24 -08:00
Rafael Ferreira
4a703893b0
Add --abs-proxy-base-path for when code-server is not at the root (#6958) 2024-08-26 20:19:55 +00:00
Asher
39ce82a44d
Add 4.92.2 release date 2024-08-19 15:30:25 -08:00
Asher
7f893234ab
Update Helm version 2024-08-19 15:30:21 -08:00
Asher
de65bfc947
Update changelog with correct Code version 2024-08-16 01:50:10 -08:00
Asher
34c6751bf8
Update VS Code to 1.92.2 (#6941)
* Update VS Code to 1.92.2

* Use server-main.js to load VS Code

It looks like the bootstrap files are now bundled so we can no longer
require them.  We could make them included again, but maybe it is better
to go through the main entrypoint anyway because it includes some nls
stuff which is maybe necessary.

This also fixes what looks like a bug where we could create two servers
if two requests came in.  I am not sure what the practical consequences
of that would be, but it will no longer do that.

* Drop es2020 patch

Unfortunately, VS Code will not load with this.  It seems to be because
`this` is being used in static properties, and it becomes `void 0` for
some reason under the es2020 target.  For example:

  static PREFIX_BY_CATEGORY = `${this.PREFIX}${this.SCOPE_PREFIX}`;

becomes

  AbstractGotoSymbolQuickAccessProvider.PREFIX_BY_CATEGORY = `${(void 0).PREFIX}${(void 0).SCOPE_PREFIX}`;

Which, obviously, will not work.

Older versions of Safari (and maybe other browsers) are likely affected.

* Fix display language

* Update Playwright

I think maybe because of the dropped es2020 patch that Webkit is now
failing because it is too old.

* Do not wait for networkidle in e2e tests

I am not sure what is going on but some tests on Webkit are timing out
and it seems the page is loaded but something is still trying to
download.  Not good, but for now try to at least get the tests passing.
2024-08-15 21:33:21 -08:00
Asher
461d4cba59
Update script tests
Installing from npm now tells you the version.
2024-08-01 11:31:44 -08:00
Asher
31bc0c6b1a
Fix dangling links in standalone release
The fix will now run both to the GitHub and npm release instead of only
for the npm releases.

Closes #5157.
2024-07-25 09:16:15 -08:00
Asher
0f9436e7b9
Remove Ranger for now
- We have a labeling bot that is marking issues as upstream (so far
  correctly) now Ranger is closing them right away and it felt too
  aggressive to me.
- It keeps posting its comment twice.  Not sure how to fix that.
2024-07-19 10:51:31 -08:00
Olivier Benz
1962f48b7f
Update Code to 1.91.1 (#6900) 2024-07-15 09:57:32 -08:00
Asher
6467c60166
Remove section about VS Code Remote
It has nothing to do with code-server and will not connect to or use
code-server in any way.

Closes #5613.
2024-07-12 17:02:40 -08:00
Asher
d9812a5970
Use version in npm install
Closes #4832.
2024-07-12 16:23:29 -08:00
Asher
f2c326147d
Fix login page assets over proxy domain 2024-07-12 15:06:44 -08:00
Asher
37a72ce63b
Enforce yarn version
Closes https://github.com/coder/code-server/issues/6695.
2024-07-12 14:49:10 -08:00
Asher
6a14070664
Add faq entry about web views
Closes #5671.
2024-07-11 11:52:23 -08:00
Asher
a9eb923790
Remove unused audit-ci dependency
There is a `yarn ci` script which was using audit-ci but this does not
appear to be called anywhere.

The security worflow uses `yarn audit` and `npm audit` which seem fine
enough anyway.
2024-07-10 13:23:24 -08:00
dependabot[bot]
2b33ca8a3f
chore: bump aquasecurity/trivy-action from 0.21.0 to 0.24.0 (#6894)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.21.0 to 0.24.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](fd25fed697...6e7b7d1fd3)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 13:10:01 -08:00
dependabot[bot]
8accfcc8ec
chore: bump prettier from 3.2.4 to 3.3.2 (#6878)
Bumps [prettier](https://github.com/prettier/prettier) from 3.2.4 to 3.3.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.2.4...3.3.2)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 13:09:41 -08:00
dependabot[bot]
2e098a2b90
chore: bump typescript from 5.4.3 to 5.5.2 (#6873)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.4.3 to 5.5.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.4.3...v5.5.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 13:09:11 -08:00
dependabot[bot]
97bcc3b934
chore: bump robinraju/release-downloader from 1.10 to 1.11 (#6875)
Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.10 to 1.11.
- [Release notes](https://github.com/robinraju/release-downloader/releases)
- [Commits](https://github.com/robinraju/release-downloader/compare/v1.10...v1.11)

---
updated-dependencies:
- dependency-name: robinraju/release-downloader
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 13:08:52 -08:00
dependabot[bot]
c86c4e8bb6
chore: bump dawidd6/action-download-artifact from 3 to 6 (#6876)
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 3 to 6.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v3...v6)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 19:26:02 +00:00
Muhammad Atif Ali
3031f8599c
ci: updates actionlint to 1.7.1 version (#6887) 2024-07-10 18:39:03 +00:00
Asher
d83ba4b46f
Release v4.91.0 2024-07-09 23:23:16 -08:00
Asher
fb3e3e1546
Log custom extensions gallery 2024-07-09 12:47:24 -08:00
Asher
901191e0f9
Update changelog 2024-07-08 17:51:47 -08:00
Asher
dd79446b00
Remove display language test
It is not working.  I test this manually anyway so for now just remove
the test, but I think maybe we have to watch for code-server to extract
the language files, and then reload the page, or maybe we have to
install the language from the UI.

Ideally we can drop our patch in the future anyway...
2024-07-08 17:50:08 -08:00
Asher
090e0fad76
Update to Code 1.91.0 (#6885) 2024-07-08 14:10:34 -08:00
Asher
6514ba4bf3
Update contributing docs 2024-07-03 13:33:02 -08:00
dependabot[bot]
250281d071
chore: bump braces from 3.0.2 to 3.0.3 (#6843)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-26 13:28:34 -08:00
dependabot[bot]
93f31e6a74
chore: bump ws from 7.5.6 to 7.5.10 in /test (#6845)
Bumps [ws](https://github.com/websockets/ws) from 7.5.6 to 7.5.10.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.5.6...7.5.10)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-26 13:27:58 -08:00
dependabot[bot]
603e467f38
chore: bump ws from 8.17.0 to 8.17.1 (#6851)
Bumps [ws](https://github.com/websockets/ws) from 8.17.0 to 8.17.1.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.17.0...8.17.1)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-26 13:27:36 -08:00
Asher
c7d88abf9f
v4.90.3 2024-06-21 11:01:16 -08:00
Asher
26c763485b
Update JSON parse error matcher
Looks like this text changed?
2024-06-21 09:52:42 -08:00
Asher
d431c9cd9d
Fix log file path
The first argument is a file name, not a path.  When the log gets
rotated it prepends the date which ends up creating a path in the
current working directory.
2024-06-21 09:47:44 -08:00
Olivier Benz
c26ac35b25
Update Code to 1.90.2 (#6853) 2024-06-20 14:14:21 -08:00
dependabot[bot]
d449729e18
chore: bump braces from 3.0.2 to 3.0.3 in /test (#6844)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-17 10:43:23 -08:00
Asher
ed069310a4
v4.90.2 2024-06-17 10:42:09 -08:00
Olivier Benz
dce1d6e172
Update Code to 1.90.1 (#6840) 2024-06-14 11:31:58 -08:00
Asher
a73549539b
Cache unchanging telemetry data
Might make sense to cache the rest as well, and evict from the cache
periodically.  For now this is enough to fix a hang I often see in our
deployment of Coder.  Might only be surfacing now because new telemetry
calls were added to startup.
2024-06-12 15:09:45 -08:00
Asher
e7ca9cd6ac
Fix changelog heading indentation 2024-06-12 13:05:41 -08:00
Asher
9da9f2029c
v4.90.0 2024-06-12 13:03:51 -08:00
Asher
0c802ba165
Remove node-gyp install (#6831)
Seems to install fine without it now.
2024-06-08 20:07:51 -08:00
Asher
1bd2b9cf08
Fix segfault in CI (#6830)
Setting DISABLE_V8_COMPILE_CACHE=1 seems to fix it.
2024-06-08 20:07:24 -08:00
Asher
3b467dec95
Update changelog for 1.90.0 2024-06-06 15:05:12 -08:00
Olivier Benz
6d9530aa6b
Update Code to 1.90.0 (#6824)
Additionally:

- Update Node to 20.11.1
- Update documentation
- Disable extension signature verification

This works around an issue where the Open VSX is not returning the
expected zip.  Verification is skipped later anyway because
@vscode/vsce-sign is missing in the OSS version.
2024-06-06 15:02:13 -08:00
dependabot[bot]
fc47b4f1c5
chore: bump aquasecurity/trivy-action from 0.19.0 to 0.21.0 (#6819)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.19.0 to 0.21.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](d710430a67...fd25fed697)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-03 10:44:54 -08:00
dependabot[bot]
479eb5bfa5
chore: bump @typescript-eslint/eslint-plugin from 6.21.0 to 7.0.0 (#6818)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.21.0 to 7.0.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.0.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-03 10:44:33 -08:00
Paweł Wiśniewski
095c072a43
Add Ubuntu Noble image (#6812) 2024-05-24 20:02:32 +00:00
XiaoZhang
4ff509d8db
Allow emptyDir type volume mounts (#6803) 2024-05-22 10:52:42 -08:00
Simon Merschjohann
efc6edf536
Support copying to clipboard from CLI (#6807)
Use --stdin-to-clipboard or -c to pass stdin to clipboard
2024-05-21 10:39:36 -08:00
Asher
3b6ad479a6
Release v4.89.1 and v4.89.0 2024-05-14 10:17:35 -08:00
Olivier Benz
effc6e95b4
Update Code to 1.89.1 (#6796) 2024-05-13 10:41:25 -08:00
Asher
ab4b36f573
Fix setuptools install on macOS
This is erroring now with "This environment is externally managed".
2024-05-07 13:41:21 -08:00
Asher
0f4791b816
Add remote machine ID to telemetry 2024-05-07 11:35:01 -08:00
Asher
97653152dd
Flush telemetry appender on dispose 2024-05-06 19:36:52 -08:00
Asher
2633bca30b
Move telemetry endpoint to product service
This will let us use it in the client.
2024-05-06 18:39:39 -08:00
Asher
125a972c81
Do not add extra args in toCodeArgs
It should only convert the args that are passed in.
2024-05-06 18:39:22 -08:00
Asher
7050002fb6
Add missing semicolon 2024-05-06 18:39:21 -08:00
Asher
4563517d90
Add isContainer property to telemetry 2024-05-06 18:37:41 -08:00
dependabot[bot]
b8cdab2184
chore: bump ws and @types/ws (#6775)
Bumps [ws](https://github.com/websockets/ws) and [@types/ws](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ws). These dependencies needed to be updated together.

Updates `ws` from 8.14.2 to 8.17.0
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.14.2...8.17.0)

Updates `@types/ws` from 8.5.5 to 8.5.10
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ws)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/ws"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 14:17:49 -08:00
dependabot[bot]
264e023ab8
chore: bump eslint from 8.53.0 to 8.57.0 (#6776)
Bumps [eslint](https://github.com/eslint/eslint) from 8.53.0 to 8.57.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.53.0...v8.57.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 14:17:30 -08:00
dependabot[bot]
ea815df22d
chore: bump semver and @types/semver (#6777)
Bumps [semver](https://github.com/npm/node-semver) and [@types/semver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/semver). These dependencies needed to be updated together.

Updates `semver` from 7.5.4 to 7.6.0
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v7.5.4...v7.6.0)

Updates `@types/semver` from 7.5.2 to 7.5.8
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/semver)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/semver"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 14:17:15 -08:00
dependabot[bot]
6757907c8b
chore: bump i18next from 23.10.1 to 23.11.3 (#6778)
Bumps [i18next](https://github.com/i18next/i18next) from 23.10.1 to 23.11.3.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.10.1...v23.11.3)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 14:16:54 -08:00
dependabot[bot]
2adb215d03
chore: bump robinraju/release-downloader from 1.9 to 1.10 (#6779)
Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.9 to 1.10.
- [Release notes](https://github.com/robinraju/release-downloader/releases)
- [Commits](https://github.com/robinraju/release-downloader/compare/v1.9...v1.10)

---
updated-dependencies:
- dependency-name: robinraju/release-downloader
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 14:16:27 -08:00
dependabot[bot]
1a7265b392
chore: bump azure/setup-helm from 3.5 to 4 (#6780)
Bumps [azure/setup-helm](https://github.com/azure/setup-helm) from 3.5 to 4.
- [Release notes](https://github.com/azure/setup-helm/releases)
- [Changelog](https://github.com/Azure/setup-helm/blob/main/CHANGELOG.md)
- [Commits](https://github.com/azure/setup-helm/compare/v3.5...v4)

---
updated-dependencies:
- dependency-name: azure/setup-helm
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 14:16:06 -08:00
Olivier Benz
e6dd7fe228
Update Code to 1.89.0 (#6783) 2024-05-06 14:14:53 -08:00
Asher
fb2afbd9d6
Handle undefined body
In the latest Express it seems the body is undefined when no data is
passed (instead of being empty).
2024-04-16 11:29:12 -08:00
Asher
3d8d544f89
Refactor VS Code routes to match others 2024-04-16 11:00:33 -08:00
Asher
323a1f3234
Only require unsafe-perm if you are root
Remove it from the docs, as the error message should be sufficient and
it seems weird to recommend unsafe-perm by default.
2024-04-16 10:48:46 -08:00
Asher
b8d830b826
Update path syntax for Express
It seems that * matches a literal * now, so we have to use a regular
expression.

Parentheses around a parameter no longer works (it causes it to match on
the parameter name literally) and I am not sure why we had it anyway as
it had no effect previously.

Matching with a leading / does not appear to work either, but we do not
need the leading / anyway since the proxy logic was changed to use the
whole path.  Consequently it will never be / anymore from what I can
tell but I left that check in just in case.  I turned it into a named
parameter as well, because that seems better.
2024-04-16 09:54:33 -08:00
Asher
417c1f36cb
Release 4.23.1 2024-04-15 16:37:01 -08:00
Asher
3eb9cf7a08
Update express and qs
It does not appear we have to pin qs anymore.
2024-04-15 16:32:52 -08:00
dependabot[bot]
f81fe3030a
chore: bump tar from 6.2.0 to 6.2.1 (#6753)
Bumps [tar](https://github.com/isaacs/node-tar) from 6.2.0 to 6.2.1.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v6.2.0...v6.2.1)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 16:25:27 -08:00
dependabot[bot]
4bc9956537
chore: bump tar from 6.1.11 to 6.2.1 in /test (#6752)
Bumps [tar](https://github.com/isaacs/node-tar) from 6.1.11 to 6.2.1.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v6.1.11...v6.2.1)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 16:25:04 -08:00
Olivier Benz
9a28bc29db
Update Code to 1.88.1 (#6754)
* Update Code to 1.88.1
* Install node-gyp

---------

Co-authored-by: Asher <ash@coder.com>
2024-04-15 15:00:21 -08:00
Asher
deebb21345
Release 4.23.0 2024-04-08 13:24:39 -08:00
Asher
73e615da4e
Fix extension installation test
This throws now that the exit is non-zero.
2024-04-05 17:39:21 -08:00
Asher
bec6ab2678
Fix masking exit code
Addresses the part of #6367 that we can fix.
2024-04-05 16:31:58 -08:00
dependabot[bot]
ebd79ed958
chore: bump aquasecurity/trivy-action from 0.18.0 to 0.19.0 (#6739)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.18.0 to 0.19.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](062f259268...d710430a67)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-05 14:24:18 -08:00
dependabot[bot]
30d343c0bd
chore: bump follow-redirects from 1.15.4 to 1.15.6 (#6725)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-05 14:22:50 -08:00
dependabot[bot]
71780f6f00
chore: bump typescript from 5.3.3 to 5.4.3 (#6736)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.3.3 to 5.4.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.3.3...v5.4.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-05 14:22:30 -08:00
dependabot[bot]
93f9dfcb1d
chore: bump i18next from 23.8.2 to 23.10.1 (#6738)
Bumps [i18next](https://github.com/i18next/i18next) from 23.8.2 to 23.10.1.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.8.2...v23.10.1)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-05 14:22:07 -08:00
dependabot[bot]
1abb2ee567
chore: bump softprops/action-gh-release from 1 to 2 (#6740)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 1 to 2.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v1...v2)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-05 14:21:48 -08:00
dependabot[bot]
1c5bfeeb99
chore: bump tj-actions/changed-files from 42 to 44 (#6741)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 42 to 44.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v42...v44)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-05 14:21:27 -08:00
Puneeth Rai
bae68548d0
Update Node to 18.18.2 (#6676) 2024-04-05 14:21:01 -08:00
Olivier Benz
0cca7c67a4
Update Code to 1.88.0 (#6745) 2024-04-05 14:20:28 -08:00
Asher
45e96ec3b0
Shorten bug dropdown descriptions 2024-03-14 12:19:13 -08:00
Asher
66364429e3
Release 4.22.1 2024-03-14 12:16:35 -08:00
Asher
0e384d5442
Tweak issue templates
- Remove the redundant title prefix.
- Remove outdated assignees.
- Improve reproduction step description (trying to get folks to submit
  more specific/detailed reproductions).
- Render logs with shell (not sure if this actually changes anything).
- Use dropdowns for testing in VS Code and Codespaces.  I think the
  existing checkboxes are still confusing so hopefully this sorts it.
2024-03-14 12:16:33 -08:00
Olivier Benz
760d1318e9
Update Code to 1.87.2 (#6721) 2024-03-12 19:30:02 +00:00
Asher
c65b1f2870
Continue release drafting on Codecov failure 2024-03-12 09:41:21 -08:00
Asher
132f7d1470
Default keepAlive to true for proxy agent 2024-03-11 14:13:21 -08:00
Olivier Benz
8c65ff8d0d
Update Code to 1.87.1 (#6714) 2024-03-11 12:51:08 -08:00
dependabot[bot]
f9c0624f85
chore: bump @typescript-eslint/eslint-plugin from 6.20.0 to 6.21.0 (#6701)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.20.0 to 6.21.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.21.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-07 11:04:03 -09:00
dependabot[bot]
4c4c566d86
chore: bump proxy-agent from 6.3.1 to 6.4.0 (#6702)
Bumps [proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/proxy-agent) from 6.3.1 to 6.4.0.
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/proxy-agent@6.4.0/packages/proxy-agent)

---
updated-dependencies:
- dependency-name: proxy-agent
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-07 11:03:16 -09:00
dependabot[bot]
720d14db3e
chore: bump rotating-file-stream from 3.1.1 to 3.2.1 (#6704)
Bumps [rotating-file-stream](https://github.com/iccicci/rotating-file-stream) from 3.1.1 to 3.2.1.
- [Changelog](https://github.com/iccicci/rotating-file-stream/blob/master/CHANGELOG.md)
- [Commits](https://github.com/iccicci/rotating-file-stream/compare/v3.1.1...v3.2.1)

---
updated-dependencies:
- dependency-name: rotating-file-stream
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-07 10:32:06 -09:00
dependabot[bot]
5453d02872
chore: bump aquasecurity/trivy-action from 0.16.1 to 0.18.0 (#6705)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.16.1 to 0.18.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](d43c1f16c0...062f259268)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-07 10:20:04 -09:00
dependabot[bot]
9f2c776a77
chore: bump prettier-plugin-sh from 0.13.1 to 0.14.0 (#6700)
Bumps [prettier-plugin-sh](https://github.com/un-ts/prettier) from 0.13.1 to 0.14.0.
- [Release notes](https://github.com/un-ts/prettier/releases)
- [Changelog](https://github.com/un-ts/prettier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/un-ts/prettier/compare/prettier-plugin-sh@0.13.1...prettier-plugin-sh@0.14.0)

---
updated-dependencies:
- dependency-name: prettier-plugin-sh
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-07 10:18:02 -09:00
dependabot[bot]
66c7f7d8b1
chore: bump @typescript-eslint/parser from 6.17.0 to 6.21.0 (#6703)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 6.17.0 to 6.21.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.21.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-07 10:17:25 -09:00
dependabot[bot]
107a3fd410
chore: bump codecov/codecov-action from 3 to 4 (#6706)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3 to 4.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-07 10:15:42 -09:00
Asher
56b5992280
Pin Arch Linux action version
We are still getting the old one, I think?
2024-03-06 14:10:57 -09:00
Asher
275c130845
Update Arch Linux action username
This broke due to the username being changed, and GitHub does not appear
to put any redirects in place.
2024-03-06 14:04:32 -09:00
Asher
223ecf7c30
Release v4.22.0 2024-03-04 06:52:54 -09:00
Olivier Benz
e5d145fdf3
Update Code to 1.87.0 (#6697)
Fixes https://github.com/coder/code-server/issues/6694
2024-02-29 12:30:03 -09:00
Asher
2248c8bdd4
Correct changelog link 2024-02-28 14:56:38 -09:00
Asher
d2dfeedb2f
Release v4.21.2 2024-02-28 14:22:31 -09:00
Asher
460a4564c3
Revert "chore: bump codecov/codecov-action from 3 to 4 (#6652)"
This reverts commit 63beaaabd73e4a9bc509be97a0366302d7f38b69.

It appears to be no longer capable of finding git.
2024-02-28 14:04:55 -09:00
Muhammad Atif Ali
963fcfc3a5
docs: add coder module as an installation method (#6692)
Co-authored-by: Asher <ash@coder.com>
2024-02-28 22:06:49 +00:00
dependabot[bot]
75611411b4
chore: bump ip from 1.1.5 to 1.1.9 in /test (#6682)
Bumps [ip](https://github.com/indutny/node-ip) from 1.1.5 to 1.1.9.
- [Commits](https://github.com/indutny/node-ip/compare/v1.1.5...v1.1.9)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-21 13:50:59 -09:00
dependabot[bot]
1e5666b68e
chore: bump ip from 1.1.8 to 1.1.9 (#6681)
Bumps [ip](https://github.com/indutny/node-ip) from 1.1.8 to 1.1.9.
- [Commits](https://github.com/indutny/node-ip/compare/v1.1.8...v1.1.9)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-21 13:50:49 -09:00
Olivier Benz
9d70cbc8b2
Update Code to 1.86.2 (#6677) 2024-02-15 22:12:56 +00:00
ckesc
853ab407de
Update FAQ: clarify about hashed pass and compose file (#6671) 2024-02-12 22:11:45 +00:00
Asher
c31d2a0e37
Release v4.21.1 2024-02-09 13:02:44 -09:00
Dmitry Sharshakov
45164bf749
Use rpm to install in Fedora image (#6670)
Dnf will pull caches if invoked for local file install and is also unnecessary
2024-02-09 12:56:57 -09:00
Dmitry Sharshakov
a2d35ad815
docker: add Fedora 39 and openSUSE Tumbleweed based images (#6669) 2024-02-08 12:31:50 -09:00
Olivier Benz
76e6f75758
Update Code to 1.86.1 (#6668) 2024-02-08 11:10:43 -09:00
Asher
413c47a86d
Update Node to 18.17.1
For https://github.com/coder/code-server/issues/6666.
2024-02-07 21:11:27 -09:00
Asher
5b62943216
Release v4.21.0 2024-02-05 09:41:51 -09:00
dependabot[bot]
84ca27278b
chore: bump eslint-config-prettier from 9.0.0 to 9.1.0 (#6648)
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 9.0.0 to 9.1.0.
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v9.0.0...v9.1.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-02 02:14:33 +00:00
dependabot[bot]
1471a152ff
chore: bump i18next from 23.7.6 to 23.8.2 (#6645)
Bumps [i18next](https://github.com/i18next/i18next) from 23.7.6 to 23.8.2.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.7.6...v23.8.2)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 16:39:31 -09:00
dependabot[bot]
6adbfc461b
chore: bump @typescript-eslint/eslint-plugin from 6.16.0 to 6.20.0 (#6646)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.16.0 to 6.20.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.20.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 16:39:14 -09:00
dependabot[bot]
2a55212027
chore: bump prettier from 3.1.1 to 3.2.4 (#6647)
Bumps [prettier](https://github.com/prettier/prettier) from 3.1.1 to 3.2.4.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.1.1...3.2.4)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 16:39:00 -09:00
dependabot[bot]
b63fda4bf7
chore: bump eslint-plugin-prettier from 5.0.0 to 5.1.3 (#6649)
Bumps [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) from 5.0.0 to 5.1.3.
- [Release notes](https://github.com/prettier/eslint-plugin-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-plugin-prettier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-plugin-prettier/compare/v5.0.0...v5.1.3)

---
updated-dependencies:
- dependency-name: eslint-plugin-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 16:38:45 -09:00
dependabot[bot]
ab17495e3a
chore: bump actions/cache from 3 to 4 (#6650)
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 16:38:25 -09:00
dependabot[bot]
53b0fda510
chore: bump robinraju/release-downloader from 1.8 to 1.9 (#6651)
Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.8 to 1.9.
- [Release notes](https://github.com/robinraju/release-downloader/releases)
- [Commits](https://github.com/robinraju/release-downloader/compare/v1.8...v1.9)

---
updated-dependencies:
- dependency-name: robinraju/release-downloader
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 16:37:57 -09:00
dependabot[bot]
63beaaabd7
chore: bump codecov/codecov-action from 3 to 4 (#6652)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3 to 4.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 16:37:42 -09:00
dependabot[bot]
2db0184c4a
chore: bump github/codeql-action from 2 to 3 (#6653)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 16:37:33 -09:00
dependabot[bot]
dd9cefab66
chore: bump tj-actions/changed-files from 41 to 42 (#6654)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 41 to 42.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v41...v42)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 16:37:09 -09:00
Olivier Benz
1d774d01bf
Update Code to 1.86.0 (#6655) 2024-02-01 16:36:47 -09:00
Asher
d6ef385de2
Release v4.20.1 2024-01-22 08:34:02 -09:00
Olivier Benz
e76afa4a2b
Update Code to 1.85.2 (#6631) 2024-01-19 22:30:16 +00:00
Asher
fdb46d3fe5
Exit with 1 when VS Code CLI errors
Addresses part of #6367.  The script bundled with VS Code still has the
same problem but it would be better to fix that one upstream.
2024-01-11 12:46:09 -09:00
Asher
d49b3bf159
Fix query string being double-encoding over path proxy
Instead of trying to piece together the original URL and re-encode what
needs to be re-encoded, strip out the base from the original URL.

Fixes #6307.
2024-01-11 12:26:06 -09:00
dependabot[bot]
e87499c301
chore: bump follow-redirects from 1.15.3 to 1.15.4 (#6624)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.3 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-11 02:32:57 +00:00
dependabot[bot]
cc68c0fb0f
chore: bump @typescript-eslint/parser from 6.9.1 to 6.17.0 (#6622)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 6.9.1 to 6.17.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.17.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:46:28 -09:00
dependabot[bot]
749e105cd9
chore: bump @types/node from 18.18.1 to 18.19.4 (#6613)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.18.1 to 18.19.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:33:10 -09:00
dependabot[bot]
94f759a53c
chore: bump actions/download-artifact from 3 to 4 (#6609)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3 to 4.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:32:33 -09:00
dependabot[bot]
2786f60752
chore: bump actions/upload-artifact from 3 to 4 (#6610)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:32:10 -09:00
dependabot[bot]
aea28cb499
chore: bump dawidd6/action-download-artifact from 2 to 3 (#6612)
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 2 to 3.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v2...v3)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:29:50 -09:00
dependabot[bot]
2cabe799e2
chore: bump @typescript-eslint/parser from 6.9.1 to 6.16.0 (#6614)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 6.9.1 to 6.16.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.16.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:28:30 -09:00
dependabot[bot]
c1be39abc7
chore: bump prettier from 3.0.3 to 3.1.1 (#6615)
Bumps [prettier](https://github.com/prettier/prettier) from 3.0.3 to 3.1.1.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.0.3...3.1.1)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:28:15 -09:00
dependabot[bot]
21e798ccdf
chore: bump aquasecurity/trivy-action from 0.14.0 to 0.16.1 (#6621)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.14.0 to 0.16.1.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](2b6a709cf9...d43c1f16c0)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:28:00 -09:00
dependabot[bot]
871030e997
chore: bump typescript from 5.2.2 to 5.3.3 (#6616)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.2.2 to 5.3.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.2.2...v5.3.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:27:42 -09:00
dependabot[bot]
a143dcf111
chore: bump @typescript-eslint/eslint-plugin from 6.11.0 to 6.16.0 (#6617)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.11.0 to 6.16.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.16.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:27:25 -09:00
dependabot[bot]
5214555683
chore: bump tj-actions/changed-files from 40 to 41 in /.github/workflows (#6618)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 40 to 41.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v40...v41)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-05 13:27:05 -09:00
Merith
ff0fcf6cde
Fix non-functional Docker Hub link (#6595)
registry.hub.docker.com leads to an blank white page
removing "registry' from the URL fixes it and takes the user to the correct page
2024-01-05 11:22:33 -09:00
Asher
07901026a0
Release v4.20.0 2023-12-21 12:53:25 -09:00
Asher
d0215eca88
Tweak bug report template
These checkboxes keep getting checked despite the submitter using an
insecure context or not having tested upstream.  I think two things are
at play here:

1. Folks might be interpreting "cannot reproduce" as "did not
   reproduce" or "did not have time to reproduce".
2. The checkboxes are required to submit the issue so folks might be
   marking them just so they can get their issue submitted; maybe they
   are not even reading the checkboxes and are just seeing the error
   that they need to be marked and blindly marking them because while
   in some cases folks will add "I had to check this but it is not
   true", usually they say nothing.

In any case, hopefully these changes make the checkboxes more accurate,
and then if they are unchecked we can ask them to go reproduce in VS
Code or use a secure context or whatever the case may be.
2023-12-18 13:56:35 -09:00
Dov Benyomin Sohacheski
d6c5a4af9c
Add Debian bookworm config to bakefile (#6590) 2023-12-18 21:30:16 +00:00
Olivier Benz
0b84523121
Update Code to 1.85.1 (#6588) 2023-12-18 20:18:44 +00:00
Olivier Benz
45694d38c4
Update Code to 1.85.0 (#6573) 2023-12-15 12:38:01 -09:00
Dov Benyomin Sohacheski
d9fe46a6be
Update and organize release image packages, add wget (#6581) 2023-12-15 20:32:14 +00:00
Ammar Bandukwala
6f078a48a6
Improve README callout to coder/coder (#6579) 2023-12-12 14:23:54 -09:00
Dov Benyomin Sohacheski
7649b6e6ca
Update base release image to Debian:12 (#6574) 2023-12-12 11:37:17 -09:00
Jeff Miller
9622830518
Disable "Show Local" button, add --disable-file-uploads option and add file operation trace level logs (#6557) 2023-12-07 12:10:22 -09:00
Asher
26a3437849
Use debug instead of trace
Trace outputs stack traces which is entirely unnecessary for these two
log entries and makes the logs noisier than they need to be.
2023-12-06 13:19:36 -09:00
Evan Rush
1fac50d6f6
Fix Helm boolean environment variable (#6563) 2023-12-04 19:32:16 +00:00
Asher
3e8100b70e
Release v4.19.1 2023-11-29 12:23:25 -09:00
Asher
0c98611e6b
Ensure we only ever set workspace initialized to true
This is just a guard in case there are paths where the workspace is
already marked as initialized but the workspace configuration is not and
we end up actually un-initializing it.
2023-11-27 17:36:26 -09:00
Asher
73cb236535
Add back local storage patch
And fix the workspace bug.  It is caused by an issue with how some
global variables are being used asynchronously and is exacerbated by the
delay reading settings from the remote introduces.

1. The workspace is created and is marked as not initialized.
2. The configuration's change handler is triggered, and now
   initialization is complete.
3. The handler tries to set the global workspace variable to initialized
   but the workspace has not been set yet so we get an undefined error.
4. The workspace global is now set, but it is set to the old value with
   initialized still set to false.
5. Workspace is never marked as initialized until something else
   triggers the on change handler again.

Fixes #3061, and closes #6546.

My guess is this logic changed in one of the VS Code updates,
introducing this async bug but never getting caught probably because for
them the settings are always local thus minimal delay.
2023-11-27 17:25:38 -09:00
Asher
9ba66ec468
Use machine settings for e2e tests
User settings are browser-based so use machine settings instead.
2023-11-20 15:42:34 -09:00
Asher
09dd5fe44d
Delete local storage patch
The main goal of this patch was to make user settings stored on disk
instead of in the browser, but this stopped working some time ago.  Not
only that but it is causing a bug where a workspace will not fully open.

A secondary goal was to fix the Vim extension but the extension appears
to work just fine without this change now (both the server and browser
versions).

This patch is not useful anymore anyway because there are remote-level
settings that *do* get stored on disk and can be used instead of
user-level settings when necessary.

Fixes #3061, and possibly #6153.
2023-11-20 13:32:59 -09:00
Quentin Quaadgras
958c5203ec
Update Termux docs on how to enable keyboard shortcuts and tab key (#6539) 2023-11-20 08:16:17 -09:00
Asher
edf078d1d2
Release v4.19.0 2023-11-20 07:29:25 -09:00
Asher
984fb135dc
Fix node-gyp failure on macOS (#6537) 2023-11-16 10:10:36 -09:00
Olivier Benz
9658969084
Update Code to 1.84.2 (#6524) 2023-11-14 13:44:21 -09:00
Asher
da254c39ee
Set Node version in a single place (#6534)
This should make it much easier to update.  Also use 18.15.0
specifically since that is what VS Code ships with.

Additionally, it fixes the post-install script being skipped due to
a Yarn v1 bug that happens when Yarn installs node-gyp, which
it does because 18.18 onward stopped bundling node-gyp.
2023-11-14 12:45:56 -09:00
dependabot[bot]
239df56634
chore: bump @typescript-eslint/eslint-plugin from 6.7.2 to 6.11.0 (#6533)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.7.2 to 6.11.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.11.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:38:31 -09:00
dependabot[bot]
c285b99c74
chore: bump eslint from 8.49.0 to 8.53.0 (#6532)
Bumps [eslint](https://github.com/eslint/eslint) from 8.49.0 to 8.53.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.49.0...v8.53.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:36:26 -09:00
dependabot[bot]
f64bc022e9
chore: bump i18next from 23.5.1 to 23.7.6 (#6531)
Bumps [i18next](https://github.com/i18next/i18next) from 23.5.1 to 23.7.6.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.5.1...v23.7.6)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:27:30 -09:00
dependabot[bot]
22c54c3b2e
chore: bump eslint-plugin-import from 2.28.1 to 2.29.0 (#6507)
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.28.1 to 2.29.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.28.1...v2.29.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:27:10 -09:00
dependabot[bot]
ae75f76e30
chore: bump aquasecurity/trivy-action from 0.13.1 to 0.14.0 (#6530)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.13.1 to 0.14.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](f78e9ecf42...2b6a709cf9)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:26:40 -09:00
dependabot[bot]
53d856d3c6
chore: bump @babel/traverse from 7.16.8 to 7.23.2 in /test (#6495)
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.16.8 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:26:04 -09:00
dependabot[bot]
4e4d510238
chore: bump docker/setup-qemu-action from 2 to 3 (#6464)
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 2 to 3.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:25:33 -09:00
dependabot[bot]
3a0f4a2773
chore: bump i18next from 23.5.1 to 23.6.0 (#6508)
Bumps [i18next](https://github.com/i18next/i18next) from 23.5.1 to 23.6.0.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.5.1...v23.6.0)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:24:53 -09:00
dependabot[bot]
cbc17516fd
chore: bump @typescript-eslint/parser from 6.7.2 to 6.9.1 (#6511)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 6.7.2 to 6.9.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.9.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:23:33 -09:00
dependabot[bot]
c4efcaf079
chore: bump actions/setup-node from 3 to 4 (#6512)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:23:05 -09:00
dependabot[bot]
f44b57393c
chore: bump docker/login-action from 2 to 3 (#6513)
Bumps [docker/login-action](https://github.com/docker/login-action) from 2 to 3.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:21:54 -09:00
dependabot[bot]
3fc30cae3e
chore: bump aquasecurity/trivy-action from 0.12.0 to 0.13.1 (#6514)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.12.0 to 0.13.1.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](fbd16365eb...f78e9ecf42)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:21:03 -09:00
dependabot[bot]
91f8ec6295
chore: bump tj-actions/changed-files from 39 to 40 (#6515)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 39 to 40.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v39...v40)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 09:20:36 -09:00
Asher
11e6e656c0
Release v4.18.0 2023-10-20 12:03:13 -08:00
Olivier Benz
d7a2b4936a
Update Code to 1.83.1 (#6488)
* Update Code to 1.83.1

* Patch out lookbehind for Safari support

Not sure why it needs a lookbehind unless a number followed by a capital
letter is not supposed to be considered a new word, which seems wrong to
me.  The tests do not contain any numbers so I can only guess.

---------

Co-authored-by: Asher <ash@coder.com>
2023-10-19 00:50:21 +00:00
Asher
c2d79d94f9
Use secure context in bug report template
Some folks run over localhost, which will work just fine for service
workers.
2023-10-11 17:19:19 -08:00
dependabot[bot]
9fec2d7cad
chore: bump docker/setup-buildx-action from 2 to 3 (#6463)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2 to 3.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-11 15:51:24 -08:00
dependabot[bot]
80dfb2b2a9
chore: bump actions/checkout from 3 to 4 (#6462)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-04 15:50:11 -08:00
Asher
27e7b931e7
Remove mention of legacy extension API
We would like to shut this down.
2023-10-04 15:44:54 -08:00
liuxhit
db9f678477
Update default nginx config in guide.md (#6471)
update nginx config to avoid wss error when expose code-server using a custom domain and a custom port via nginx.

see also: 
[issue of code-server](https://github.com/coder/code-server/issues/4443)
[different between `$host` and `$http_host`](https://stackoverflow.com/a/76875724)
2023-10-04 10:41:35 -08:00
Olivier Benz
c095c26dbc
Update Code to 1.82.3 (#6472) 2023-10-04 17:17:27 +00:00
dependabot[bot]
262f66abf6
chore: bump @types/node from 18.17.18 to 18.18.1 (#6467)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.17.18 to 18.18.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-02 13:25:52 -08:00
dependabot[bot]
8ee45686b0
chore: bump aquasecurity/trivy-action from 0.11.2 to 0.12.0 (#6461)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.11.2 to 0.12.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](41f05d9ecf...fbd16365eb)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-02 13:24:45 -08:00
dependabot[bot]
512d97f22f
chore: bump tj-actions/changed-files from 38 to 39 (#6460)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 38 to 39.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v38...v39)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-02 13:24:15 -08:00
Daniel T. Lee
897e0ae1da
Modify manifest for window control overlay support (#6468)
Since the release of code-server v4.17.0 (Code 1.82), "Command Center" has become a default option. However, the current code-server PWA app lacks support for the Windows control overlay, resulting in an untidy appearance of the title bar. This commit introduces modifications to the manifest file to enable support for the window control overlay.
2023-10-02 18:03:37 +00:00
Asher
f4bf492051
Release v4.17.1 2023-09-29 15:21:48 -08:00
Asher
2eba7af117
Use code-server commit in product.json
Also remove github.com from the trusted domains.  This causes the
browser to block the popup instead (probably because the space between
interaction and popup is too great), which is difficult to notice in
Chromium.  Even in Firefox with the extra bar they add at the top it can
be easy to miss.
2023-09-29 13:58:01 -08:00
Asher
0dc59c0da2
Add trusted extension list
Also trust github.com to make the auth flow smoother.
2023-09-29 10:39:00 -08:00
Asher
6275520348
Fix incorrect argon2 target in arm builds (#6453)
* Fix building from source on arm

Not building from source causes argon2 to pull the wrong arch, so we
have to build from source.

But building from source is causing the new Kerberos module to fail on
arm64 and keytar to fail on both.

The latter has been very difficult to debug because the GitHub image
provides a different result to containers based on Ubuntu 20.04.
Because of this, use a container instead.

Use debian:buster as the container because it is easier to set up the
architecture sources (no need to modify the sources) and because it
seems to come with glibc 2.28 rather than 2.31.

Also use the exact version of Node (18.15.0) for reproducibility.

* Set owner and group during tar to zero

Otherwise you get IDs that can cause (benign) errors while extracting,
which might be confusing.  At the very least, I did not see these errors
from previous tars (although they seem to use 1001).

There is no guarantee what IDs might exist so 0 seems the most
reasonable.
2023-09-27 19:17:47 -08:00
Asher
2bb51a25a9
Refresh proxy URI patch 2023-09-26 12:19:13 -08:00
Asher
7a213161f2
Build from source on cross-compile step
The comment said the issue with argon2 was related to CentOS 7 but the
cross-compile steps never used CentOS 7 so maybe the real issue is with
the architecture.
2023-09-26 09:58:53 -08:00
Asher
a1131fadf2
Enable secret storage (#6450)
* Remove unused dependency patch

* Enable secret storage based on local storage

* Remove unnecessary GitHub auth patch

It works now without the patch.
2023-09-26 08:35:41 -08:00
Asher
468cf5c6ce
Update npm publish workflow to use v18 2023-09-22 17:53:56 -08:00
Asher
800bf364d6
Release v4.17.0 2023-09-22 17:49:40 -08:00
DevMirza
5428442628
feat(lang): Add Urdu Locale (#6444) 2023-09-22 17:16:51 -08:00
Dov Benyomin Sohacheski
020f280458
Add .local mount to example Docker command (#6419) 2023-09-22 17:07:07 -08:00
Asher
58f6e24a07
Fix installation of kerberos module on armv7l (#6442)
Also build with the same version of Node we will release with.
2023-09-22 00:54:14 -08:00
Asher
7868f4db23
Fix cross-compilation (#6441)
* Avoid packaging yarn.lock

Since the shrinkwrap is what we want everything to use.

* Build with npm

It seems we stuck with yarn because npm was giving us errors but I will try
sorting it out now so we can build with npm as originally intended.

* Remove build from source

Not using CentOS 7 anymore so based on the comment we no longer need
this.  Keytar seems to install fine now.

* Update missed Node version

These numbers are all over the place.

* npm_config_arch must be lowercase

* Patch out Kerberos

I am not sure exactly how it is used but I think it is not a path code-server
worries about, at least not right now.  Just going to patch it out rather than
figure out how to build it on armv7l but we can revisit later.
2023-09-21 23:21:01 -08:00
Asher
acc50a5d36
Update dependencies and force-update qs (#6440)
* Update dependencies and force-update qs

This is mainly an attempt to get rid of as many resolutions as possible
since it seems they are unnecessary except for qs (according to yarn/npm
audit).

For qs use 6.9.7 since Express is using 6.9.6 and that matches the most
closely.

Also add overrides since this is npm's version of yarn's resolutions and
we need it for the shrinkwrap to generate with the right dependencies.

Decided to keep pinning @types/node as well although I am not sure it is
necessary.  Express is pulling in v20 types.  Since this is
development-only we only need it in resolutions.

* Run formatter

Some rules seem to have changed with the dependency updates.

* Replace deprecated bodyParser.json() usage

* Audit npm shrinkwrap as well

* Skip installing dependencies in audit

It seems the tools only require the lock files.

* Fix tests when using ipv6

* Add missing openssl dependency to flake
2023-09-21 16:13:34 -08:00
Asher
47ee7ae670
Bump minimum glibc to 2.28 (#6439)
At least, for the standalone and for anyone running on default Node 18.

If support for 2.17 is needed then one would need to build Node 18 with 2.17 and then build code-server with that version (specifically, the native npm modules).
2023-09-21 13:42:17 -08:00
Asher
70d0c603cc
Update to VS Code 1.82.2 (#6436)
* Update VS Code to 1.82.2

* Add new libkrb5 dependency

* Update patches

The only changes were to context except:

- The URL callback provider uses a new _callbackRoute argument and moved
  locations.
- The telemetry provider gets passed the request service as the first
  argument now.
- CSP hash changed, as usual.

* Update Node to v18

* Revert back to es2020

es2022 is breaking Safari.
2023-09-20 15:33:28 -08:00
dependabot[bot]
2e29c233ea
chore: bump tj-actions/changed-files from 37 to 38 (#6417)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 37 to 38.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v37...v38)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-18 11:54:56 -08:00
dependabot[bot]
331a017309
chore: bump argon2 from 0.30.3 to 0.31.0 (#6415)
Bumps [argon2](https://github.com/ranisalt/node-argon2) from 0.30.3 to 0.31.0.
- [Release notes](https://github.com/ranisalt/node-argon2/releases)
- [Commits](https://github.com/ranisalt/node-argon2/compare/v0.30.3...v0.31.0)

---
updated-dependencies:
- dependency-name: argon2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-18 11:53:31 -08:00
dependabot[bot]
f915d1e2c8
chore: bump eslint from 8.44.0 to 8.48.0 (#6414)
Bumps [eslint](https://github.com/eslint/eslint) from 8.44.0 to 8.48.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.44.0...v8.48.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-18 11:52:54 -08:00
Kaoru Yamamoto
95bcf101d7
Add Japanese locale (#6433) 2023-09-18 17:23:03 +00:00
James MacDonald
d80568df20
Add pod annotations (#6432) 2023-09-16 00:31:05 +00:00
Asher
03dc8cd808
Propagate post-installation failures
pipefail might be ideal here but not sure how wide the support is yet
considering this may run on plain sh.
2023-09-11 09:27:29 -08:00
Asher
3e1c00e017
Run formatter
Not sure why CI missed these, will have to look into it.
2023-09-11 09:27:28 -08:00
Cyanoure
a76e5241b6
Add "CODE_SERVER_HOST" environment variable (#6423) 2023-09-08 22:50:11 +00:00
Asher
913fc30866
Upgrade @coder/logger (#6409)
This gets rid of the unused peer dependency that was pulling in
protobufjs.
2023-08-30 12:10:34 -08:00
Asher
eb498b0d6d
Remove humanPath (#6404)
The tilde is ambiguous and it can be helpful to know exactly what paths
code-server is trying to use, especially if it is running as a different
user than you expected.
2023-08-29 14:25:24 -08:00
Antoine
eb8099ff89
feat(helm): Don't create Secret if existingSecret is provided (#6397) 2023-08-28 11:01:11 -08:00
Efren
56d3548fa2
Add braces to Caddyfile example (#6382) 2023-08-10 00:44:23 +00:00
jothi prasath
2d335bd1ea
Update screenshots (#6372) 2023-08-07 19:02:54 +00:00
dependabot[bot]
291682e1c0
chore: bump i18next from 23.2.11 to 23.4.1 (#6362)
Bumps [i18next](https://github.com/i18next/i18next) from 23.2.11 to 23.4.1.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v23.2.11...v23.4.1)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-02 10:17:13 -08:00
dependabot[bot]
97aeb77abe
chore: bump eslint-plugin-import from 2.27.5 to 2.28.0 (#6363)
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.27.5 to 2.28.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.27.5...v2.28.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-02 10:16:13 -08:00
dependabot[bot]
76fd2389e4
chore: bump proxy-agent from 6.2.1 to 6.3.0 (#6361)
Bumps [proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/proxy-agent) from 6.2.1 to 6.3.0.
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/proxy-agent@6.3.0/packages/proxy-agent)

---
updated-dependencies:
- dependency-name: proxy-agent
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-02 09:51:46 -08:00
Asher
3cb92edc76
Release v4.16.1 2023-07-31 11:21:45 -08:00
Olivier Benz
94ef3776ad
Update Code to 1.80.2 (#6357) 2023-07-31 09:14:29 -08:00
Asher
a82f1ceaa5
Add missing FAQ table of contents entry 2023-07-28 17:46:36 -08:00
Asher
25254214fb
Release v4.16.0 2023-07-28 17:32:57 -08:00
Asher
feb5e6770c
Add entry for location of configuration
Closes #6324.
2023-07-28 17:32:48 -08:00
Asher
e37b35278d
Account for disabled proxy in startup logs 2023-07-27 09:26:11 -08:00
Asher
2ffbcfdfcb
Release v4.15.0 2023-07-21 15:30:03 -08:00
Ryan Brainard
74da5167a2
Add --disable-proxy option (#6349) 2023-07-21 15:23:21 -08:00
dependabot[bot]
daac46b3cf
chore: bump i18next from 22.5.1 to 23.2.11 (#6326)
Bumps [i18next](https://github.com/i18next/i18next) from 22.5.1 to 23.2.11.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v22.5.1...v23.2.11)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-20 14:03:21 -05:00
dependabot[bot]
ea3c79ffd1
chore: bump @typescript-eslint/eslint-plugin from 5.59.1 to 5.62.0 (#6327)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.59.1 to 5.62.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.62.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-20 13:31:37 -05:00
Alex Thillen
93e60f7b0e
add trusted-origins cli argument (#6319) 2023-07-19 14:04:03 -08:00
dependabot[bot]
7926647058
chore: bump tough-cookie from 4.0.0 to 4.1.3 in /test (#6318)
Bumps [tough-cookie](https://github.com/salesforce/tough-cookie) from 4.0.0 to 4.1.3.
- [Release notes](https://github.com/salesforce/tough-cookie/releases)
- [Changelog](https://github.com/salesforce/tough-cookie/blob/master/CHANGELOG.md)
- [Commits](https://github.com/salesforce/tough-cookie/compare/v4.0.0...v4.1.3)

---
updated-dependencies:
- dependency-name: tough-cookie
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-19 14:02:19 -08:00
dependabot[bot]
d27cd43dce
chore: bump @typescript-eslint/parser from 5.61.0 to 5.62.0 (#6328)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.61.0 to 5.62.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.62.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-19 14:01:32 -08:00
dependabot[bot]
1befd37310
chore: bump word-wrap from 1.2.3 to 1.2.4 (#6342)
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

---
updated-dependencies:
- dependency-name: word-wrap
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-19 14:01:14 -08:00
dependabot[bot]
2b3b5e7051
chore: bump word-wrap from 1.2.3 to 1.2.4 in /test (#6343)
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

---
updated-dependencies:
- dependency-name: word-wrap
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-19 14:00:56 -08:00
Olivier Benz
788da5d495
Update Code to 1.80.1 (#6340)
* Update Code to 1.80.1 (#6340)
* Give build workflow more time to run
2023-07-19 14:00:31 -08:00
dependabot[bot]
070a5a3179
chore: bump semver from 6.3.0 to 6.3.1 in /test (#6320)
Bumps [semver](https://github.com/npm/node-semver) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/v6.3.1/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v6.3.0...v6.3.1)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-14 13:52:42 -08:00
Michael Thomas
7cbb6a8b09
Add Svelte to guide (#6269)
Added a guide on proxying to a Svelte app since there wasn't one already. Used the vue and angular guides as a template and included a link to an issue post on sveltekits website which adds some context.
2023-07-13 16:17:25 -05:00
dependabot[bot]
7fb54073db
chore: bump @typescript-eslint/parser from 5.59.11 to 5.61.0 (#6312)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.59.11 to 5.61.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.61.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-13 16:04:32 -05:00
dependabot[bot]
e72e8bb6b5
chore: bump aquasecurity/trivy-action from 0.10.0 to 0.11.2 (#6303)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.10.0 to 0.11.2.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](e5f43133f6...41f05d9ecf)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-13 16:04:18 -05:00
dependabot[bot]
411846528b
chore: bump eslint from 8.39.0 to 8.44.0 (#6299)
Bumps [eslint](https://github.com/eslint/eslint) from 8.39.0 to 8.44.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.39.0...v8.44.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-13 16:03:55 -05:00
dependabot[bot]
7f024eda6e
chore: bump typescript from 5.0.4 to 5.1.6 (#6297)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.0.4 to 5.1.6.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/commits)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-06 13:59:24 -05:00
dependabot[bot]
2617623ed6
chore: bump tj-actions/changed-files from 36 to 37 (#6302)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 36 to 37.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v36...v37)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-06 13:59:01 -05:00
Asher
70aa1b7722
Release v4.14.1 2023-06-26 10:21:35 -08:00
dependabot[bot]
90a4147381
chore: bump semver from 7.3.8 to 7.5.2 (#6287)
Bumps [semver](https://github.com/npm/node-semver) from 7.3.8 to 7.5.2.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v7.3.8...v7.5.2)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-26 12:12:45 -05:00
Asher
5c19962930
Set session socket into environment variable (#6282)
* Avoid spawning code-server with --reuse-window and --new-window

These flags mean the user explicitly wants to open in an existing
instance so if the socket is down it should error rather than try to
spawn code-server normally.

* Set session socket into environment variable

While I was at it I added a CLI flag to override the default.  I also
swapped the default to --user-data-dir.

The value is set on an environment variable so it can be used by the
extension host similar to VSCODE_IPC_HOOK_CLI.

* Add e2e test for opening files externally
2023-06-21 22:47:01 -08:00
Asher
56d10d82bf
Enforce Node binary permissions
In some cases it may have extra write permissions.
2023-06-21 11:23:40 -08:00
Asher
cef2aa22dc
Move session server log after HTTP server logs
The indented logs technically apply to the HTTP server so move the
session server log afterward to avoid making them look like they apply
to the session server.
2023-06-21 10:59:02 -08:00
Sean Lee
b5a9ef80e7
Use unique socket per user for managing editor sessions (#6278)
Also warn if editor session manager socket cannot be created rather than failing.
2023-06-21 13:39:25 -05:00
Asher
5d3c9edce4
Release v4.14.0 2023-06-16 13:38:21 -08:00
Asher
9955cd91a4
Update Code to 1.79.1 (#6264)
Mostly just the usual shifting or changing of the surrounding context
but I did refactor the getting started block we insert because it keeps
getting mangled on each update.  Instead of shifting things around the
columns I just prepend it to the right column.

Getting 404s on some vsda module but everything seems to work 
without it and I do not see it referenced in the package.json nor a
nywhere on npmjs.com so it seems to be optional.
2023-06-15 08:00:03 -08:00
dependabot[bot]
fdeaba9581
chore: bump proxy-agent from 5.0.0 to 6.2.1 (#6247)
* chore: bump proxy-agent from 5.0.0 to 6.2.1

Bumps [proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/proxy-agent) from 5.0.0 to 6.2.1.
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases)
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/proxy-agent/CHANGELOG.md)
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/proxy-agent@6.2.1/packages/proxy-agent)

---
updated-dependencies:
- dependency-name: proxy-agent
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update proxy-agent usage

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Asher <ash@coder.com>
2023-06-14 14:27:15 -08:00
dependabot[bot]
40ff2e6049
chore: bump @typescript-eslint/parser from 5.57.1 to 5.59.11 (#6262)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.57.1 to 5.59.11.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.59.11/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-14 14:08:39 -08:00
dependabot[bot]
73d42f7ea0
chore: bump i18next from 22.4.6 to 22.5.1 (#6261)
Bumps [i18next](https://github.com/i18next/i18next) from 22.4.6 to 22.5.1.
- [Release notes](https://github.com/i18next/i18next/releases)
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next/compare/v22.4.6...v22.5.1)

---
updated-dependencies:
- dependency-name: i18next
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-14 13:33:51 -08:00
Sean Lee
fb73742b2b
Prefer matching editor sessions when opening files. (#6191)
Signed-off-by: Sean Lee <freshdried@gmail.com>
2023-06-14 13:32:07 -08:00
Asher
ccb0d3a34f
Remove unused dependency split2
This was used with now-removed `--link`.
2023-06-13 10:38:13 -08:00
dependabot[bot]
4a121edd16
chore: bump tj-actions/changed-files from 35 to 36 (#6246)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 35 to 36.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v35...v36)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 18:28:24 +00:00
dependabot[bot]
f6db985712
chore: bump robinraju/release-downloader from 1.7 to 1.8 (#6245)
Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.7 to 1.8.
- [Release notes](https://github.com/robinraju/release-downloader/releases)
- [Commits](https://github.com/robinraju/release-downloader/compare/v1.7...v1.8)

---
updated-dependencies:
- dependency-name: robinraju/release-downloader
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 12:47:40 -05:00
dependabot[bot]
6d00fc7f46
chore: bump typescript from 4.6.4 to 5.0.4 (#6182)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.6.4 to 5.0.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.6.4...v5.0.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 12:45:49 -05:00
Jonas
ee024f3f2d
docs: mention Termux extension workarounds (#6227) 2023-05-31 15:00:58 -08:00
Simon Merschjohann
0703ef008c
Allow {{host}} and {{port}} in domain proxy (#6225) 2023-05-31 16:31:30 -05:00
Asher
2109d1cf6a
Add new unreleased section to changelog 2023-05-22 12:21:30 -08:00
Asher
74af05dfbe
Release v4.13.0 2023-05-19 13:14:29 -08:00
dependabot[bot]
2798322b03
chore: bump vm2 from 3.9.17 to 3.9.19 (#6216)
Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.17 to 3.9.19.
- [Release notes](https://github.com/patriksimek/vm2/releases)
- [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patriksimek/vm2/compare/3.9.17...3.9.19)

---
updated-dependencies:
- dependency-name: vm2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-17 12:38:38 -08:00
Asher
b3b971480f
Support X-Forwarded-Host with multiple hosts
Closes #6215.
2023-05-17 11:51:05 -08:00
Asher
6745a46034
Fix extension install test
This is not a valid ID (to install a specific version you use @) and,
quite strangely, Code is now returning an "extension not found" error if
the ID is invalid, breaking the test since we expect it to error about
the marketplace not existing.
2023-05-15 20:54:37 -08:00
Asher
43ef50b404
Update to 1.78.2 (#6201)
* Update to 1.78.1

No changes needed in the patches other than moving some lines around and
updating the CSP hash as usual.

The flake had to be updated as it was using Node 16.16 and 16.17 is
required at minimum now.  Also python seems to install python2 which is
marked as deprecated so explicitly install python3.

* Update to 1.78.2

Patches applied without any conflicts.

* Update commit environment variable

This was causing the commit not to be set.  It broke display languages
since that has a hard dependency on the commit for directory names.
Possibly broke other things.
2023-05-15 15:44:03 -08:00
dependabot[bot]
45c89856fd
chore: bump eslint-config-prettier from 8.6.0 to 8.8.0 (#6179)
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 8.6.0 to 8.8.0.
- [Release notes](https://github.com/prettier/eslint-config-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v8.6.0...v8.8.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-08 12:43:37 -08:00
Jim van Abkoude
5f4ae75431
Add nix-on-droid as an Android installation method (#6196) 2023-05-08 12:42:43 -08:00
易良
521ff44aed
fix: relative path in markdown (#6188)
Co-authored-by: jinjing.zzj <jinjing.zzj@alibaba-inc.com>
2023-05-08 12:38:52 -08:00
Asher
5708e6ce32
Format redacted arg lines
Pushing straight to main again.
2023-05-05 14:44:40 -08:00
Asher
3f7db15fde
Redact sensitive args from handshake debug log 2023-05-04 10:54:41 -08:00
Asher
8c99f41b90
Fix parent process log level 2023-05-04 10:48:32 -08:00
Asher
e02d56dbfd
Do not trace child process messages
All this does is add a stack trace which is not helpful here.
2023-05-04 10:48:31 -08:00
Asher
aac5efa046
Do not log < 500 on web sockets as errors
For example if someone spams a web socket without authentication we
should not log "forbidden".  Forbidden is normal/expected operation, not
an error.
2023-05-04 10:48:30 -08:00
dependabot[bot]
ff2764f7b1
chore: bump rotating-file-stream from 3.0.0 to 3.1.0 (#6183)
Bumps [rotating-file-stream](https://github.com/iccicci/rotating-file-stream) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/iccicci/rotating-file-stream/releases)
- [Changelog](https://github.com/iccicci/rotating-file-stream/blob/master/CHANGELOG.md)
- [Commits](https://github.com/iccicci/rotating-file-stream/compare/v3.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: rotating-file-stream
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-03 08:33:32 -08:00
dependabot[bot]
bda6b631ab
chore: bump @typescript-eslint/eslint-plugin from 5.57.1 to 5.59.1 (#6180)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.57.1 to 5.59.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.59.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-01 16:49:48 -08:00
dependabot[bot]
9bac70ea0d
chore: bump eslint from 8.26.0 to 8.39.0 (#6181)
Bumps [eslint](https://github.com/eslint/eslint) from 8.26.0 to 8.39.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.26.0...v8.39.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-01 16:49:18 -08:00
dependabot[bot]
7722ef1437
chore: bump aquasecurity/trivy-action from 0.9.2 to 0.10.0 (#6178)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.9.2 to 0.10.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](1f0aa582c8...e5f43133f6)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-01 11:17:06 -05:00
smalllady
951d8ac45e
Fix proxying non-ASCII (#6154)
This only affects the path proxy since `req.originalUrl` is in escaped format.
2023-04-25 11:41:33 -08:00
Asher
2e17735795
Release v4.12.0 (#6157) 2023-04-21 14:04:07 -05:00
dependabot[bot]
1da7cda39e
chore: bump vm2 from 3.9.15 to 3.9.17 (#6155)
Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.15 to 3.9.17.
- [Release notes](https://github.com/patriksimek/vm2/releases)
- [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patriksimek/vm2/compare/3.9.15...3.9.17)

---
updated-dependencies:
- dependency-name: vm2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-20 10:58:58 -08:00
Asher
c829d74203
Update to Code 1.77.3 (#6148) 2023-04-13 10:34:33 -08:00
Asher
39075b2cf3
Update to Code 1.77.2 (#6142)
No changes necessary.
2023-04-12 08:52:16 -08:00
dependabot[bot]
aed1fc0119
chore: bump cross-fetch from 3.1.4 to 3.1.5 in /test (#6087)
Bumps [cross-fetch](https://github.com/lquixada/cross-fetch) from 3.1.4 to 3.1.5.
- [Release notes](https://github.com/lquixada/cross-fetch/releases)
- [Commits](https://github.com/lquixada/cross-fetch/compare/v3.1.4...v3.1.5)

---
updated-dependencies:
- dependency-name: cross-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-11 14:17:03 -05:00
Asher
6e411adb01
Update Code to 1.77.1 (#6135) 2023-04-10 10:28:13 -08:00
dependabot[bot]
36ba646bcb
chore: bump json5 from 2.2.0 to 2.2.3 in /test (#6085)
Bumps [json5](https://github.com/json5/json5) from 2.2.0 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.0...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-10 09:45:09 -08:00
dependabot[bot]
278d0f2184
chore: bump vm2 from 3.9.11 to 3.9.15 (#6134)
Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.11 to 3.9.15.
- [Release notes](https://github.com/patriksimek/vm2/releases)
- [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patriksimek/vm2/compare/3.9.11...3.9.15)

---
updated-dependencies:
- dependency-name: vm2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-07 22:01:25 +00:00
dependabot[bot]
b954250018
chore: bump eslint-plugin-import from 2.26.0 to 2.27.5 (#6123)
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.26.0 to 2.27.5.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.26.0...v2.27.5)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-07 21:40:43 +00:00
dependabot[bot]
2b72da22e6
chore: bump @typescript-eslint/parser from 5.41.0 to 5.57.1 (#6132)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.41.0 to 5.57.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.57.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-07 21:21:36 +00:00
dependabot[bot]
3c838e2d02
chore: bump @typescript-eslint/eslint-plugin from 5.56.0 to 5.57.1 (#6133)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.56.0 to 5.57.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.57.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-07 20:55:02 +00:00
dependabot[bot]
f8d563c49b
chore: bump split2 from 4.1.0 to 4.2.0 (#6121)
Bumps [split2](https://github.com/mcollina/split2) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/mcollina/split2/releases)
- [Commits](https://github.com/mcollina/split2/compare/v4.1.0...v4.2.0)

---
updated-dependencies:
- dependency-name: split2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-07 20:36:33 +00:00
dependabot[bot]
39e63af359
chore: bump ts-node from 10.1.0 to 10.9.1 (#6125)
Bumps [ts-node](https://github.com/TypeStrong/ts-node) from 10.1.0 to 10.9.1.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Changelog](https://github.com/TypeStrong/ts-node/blob/main/development-docs/release-template.md)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v10.1.0...v10.9.1)

---
updated-dependencies:
- dependency-name: ts-node
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-07 12:17:22 -08:00
Asher
c995988b70
Set proxy URI to domain proxy when possible (#6115)
This will make the ports panel use it instead of the default path-based
proxy.
2023-03-30 12:01:49 -08:00
watchakorn-18k
a44bd71043
Add thai language i18n (#6103) 2023-03-30 13:00:58 -05:00
Asher
19bcd043d7
Add debug log for origin check (#6096)
Extracted host detection into a separate function to avoid multiple log
lines on each return and went with a thrown error to consolidate the
common log text.
2023-03-30 12:24:33 -05:00
dependabot[bot]
c32a31d802
chore: bump ws from 8.2.0 to 8.13.0 (#6100)
Bumps [ws](https://github.com/websockets/ws) from 8.2.0 to 8.13.0.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.2.0...8.13.0)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 14:08:53 -05:00
dependabot[bot]
45ca68c362
chore: bump jpeg-js from 0.4.3 to 0.4.4 in /test (#6086)
Bumps [jpeg-js](https://github.com/eugeneware/jpeg-js) from 0.4.3 to 0.4.4.
- [Release notes](https://github.com/eugeneware/jpeg-js/releases)
- [Commits](https://github.com/eugeneware/jpeg-js/compare/v0.4.3...v0.4.4)

---
updated-dependencies:
- dependency-name: jpeg-js
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 14:03:39 -05:00
dependabot[bot]
8f1a70339d
chore: bump node-fetch from 2.6.6 to 2.6.7 in /test (#6084)
Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.6 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](https://github.com/node-fetch/node-fetch/compare/v2.6.6...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 14:03:09 -05:00
dependabot[bot]
35209aa5b5
chore: bump minimatch from 3.0.4 to 3.1.2 in /test (#6083)
Bumps [minimatch](https://github.com/isaacs/minimatch) from 3.0.4 to 3.1.2.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.0.4...v3.1.2)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 14:02:52 -05:00
dependabot[bot]
87f44599e5
chore: bump audit-ci from 6.0.0 to 6.6.1 (#6040)
Bumps [audit-ci](https://github.com/IBM/audit-ci) from 6.0.0 to 6.6.1.
- [Release notes](https://github.com/IBM/audit-ci/releases)
- [Commits](https://github.com/IBM/audit-ci/compare/v6.0.0...v6.6.1)

---
updated-dependencies:
- dependency-name: audit-ci
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 14:02:41 -05:00
dependabot[bot]
71f01ec0f0
chore: bump @types/node from 16.11.41 to 16.18.18 (#6099)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 16.11.41 to 16.18.18.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 14:02:22 -05:00
dependabot[bot]
f8e2d00099
chore: bump @typescript-eslint/eslint-plugin from 5.51.0 to 5.56.0 (#6102)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.51.0 to 5.56.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.56.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 14:02:00 -05:00
dependabot[bot]
a485fec27c
chore: bump minimist from 1.2.5 to 1.2.8 in /test (#6095)
Bumps [minimist](https://github.com/minimistjs/minimist) from 1.2.5 to 1.2.8.
- [Release notes](https://github.com/minimistjs/minimist/releases)
- [Changelog](https://github.com/minimistjs/minimist/blob/main/CHANGELOG.md)
- [Commits](https://github.com/minimistjs/minimist/compare/v1.2.5...v1.2.8)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 18:58:55 +00:00
dependabot[bot]
aa2276293a
chore: bump cookiejar from 2.1.3 to 2.1.4 in /test (#6094)
Bumps [cookiejar](https://github.com/bmeck/node-cookiejar) from 2.1.3 to 2.1.4.
- [Release notes](https://github.com/bmeck/node-cookiejar/releases)
- [Commits](https://github.com/bmeck/node-cookiejar/commits)

---
updated-dependencies:
- dependency-name: cookiejar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 18:11:42 +00:00
Felix K
72eae01684
Add information on using PWA with desktop Firefox (#6098)
Co-authored-by: Felix Kuhlmann <felix-kuhlmann@gmx.de>
2023-03-22 17:52:35 +00:00
Ahmed El-Sharnoby
bca733de3d
Allow app-name configuration to change the name of the PWA (#6093) 2023-03-22 01:02:31 +00:00
Asher
78282a1fd6
Make random formatting change to security.yaml
This is an attempt to set myself as the notification target.

Closes #6090.
2023-03-21 12:24:10 -08:00
Asher
dbdd2edb62
Fix proxy error on web sockets
Fixes #6088.
2023-03-21 12:24:09 -08:00
Asher
a9d61daa91
Release v4.11.0 2023-03-16 10:04:57 -08:00
Initial-heart
6c08466b05
Correct default shell docs for npm on Windows (#6078) 2023-03-16 12:46:11 -05:00
dependabot[bot]
85e083580d
chore: bump aquasecurity/trivy-action from 0.9.0 to 0.9.2 (#6075)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.9.0 to 0.9.2.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](cff3e9a7f6...1f0aa582c8)

---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-14 16:49:25 -05:00
Asher
b0431069a1
Replace CI deprecations (#6072)
* Replace deprecated set-output usage in CI

* Update tj-actions/changed-files

CI is saying it uses Node 12 and that Node 12 actions are deprecated.
2023-03-14 15:52:53 -05:00
Asher
f9cc07926b
Update Code to 1.76.1 (#6070)
* Update Code to 1.76.1

- worker-src already contains blob so we can avoid patching that.
- localeService moved.
- Remaining changes were just line changes.

* Make language extensions installable again

Still might want to look into making the native language support work
but for now it seems better not to break backwards compatibility since
the native implementation is quite different.

* Avoid "install in browser" for language packs

It will not work.

* Import correct locale service

I believe before the contributions imported this but now we have to do
it here.
2023-03-14 15:03:53 -05:00
Asher
be40eca5d9
Release v4.10.1 2023-03-03 22:24:54 -09:00
Asher
9ba08907da
Fix Node version failure in publish workflow
Looks like the images got updated to v18 so they started failing.  For
npm install v16 and for Docker just run the script directly, it seems
silly to waste time installing v16 just to run a script through yarn.
2023-03-03 22:23:21 -09:00
Asher
d477972c68
Add origin checks to web sockets (#6048)
* Move splitOnFirstEquals to util

I will be making use of this to parse the forwarded header.

* Type splitOnFirstEquals with two items

Also add some test cases.

* Check origin header on web sockets

* Update changelog with origin check

* Fix web sockets not closing with error code
2023-03-03 03:12:34 -06:00
Asher
a47cd81d8c
Update FAQ: code-server is not using a direct fork
Also the wrapper process is another major difference along with the
update notifications.
2023-02-27 14:29:55 -09:00
Asher
c9fbcffd53
Rewrite differences in FAQ
- Move differences to the Codespaces section since they apply to both
  Codespaces and OpenVSCode-Server
- Add some important missing differences
- Exclude settings sync (not being worked on)
- Exclude the plugin API (deprecated)
- Exclude certificate support (browsers these days are starting to
  require trusted certs so better not to recommend using this)
2023-02-27 14:21:11 -09:00
Michael Tinsley
befa76d09d
Fix extra prefix dashes in install.sh (#6028) 2023-02-27 22:57:57 +00:00
Asher
e0ece195c1
Update changelog and chart with new version 2023-02-15 11:16:09 -09:00
Asher
ac1fba8bde
Remove deprecated --link (#6018) 2023-02-13 16:52:48 -06:00
Blue
6d8ed77fb0
feat(helm-chart): Add support for extraSecretMounts subPath in helm-chart (#5961) 2023-02-13 13:01:32 -06:00
Samuel Walker
4fb87f920f
feature: add ability to attach ports to code server (#6015) 2023-02-13 12:56:05 -06:00
Asher
36daac3031
Update to 1.75.1 2023-02-13 07:45:24 -09:00
Asher
45aef719d3
Make sure heartbeat isActive resolves
This does not seem to actually cause an issue (not resolving ends up
with the same behavior as resolving with false) but I am not sure if the
hanging promises would be a memory leak so seems best to fix.
2023-02-08 11:43:40 -09:00
Asher
6d6c5e18d1
Fix watch script ignoring stdout
This was lost due to the change from fork to spawn.
2023-02-08 11:42:28 -09:00
Asher
17bca521af
Update changelog 2023-02-07 13:57:53 -09:00
Asher
82073743b1
Update release guide 2023-02-07 13:57:52 -09:00
Asher
71ff747c48
Update Code to 1.75.0 (#6004)
* Update Code to 1.75.0

- getting-started.diff: The way to get an icon's class changed
- proxy-uri.diff: The product service is passed in so we can get the
  proxy URI from that now instead of passing it in separately.

* Remove workspace trust test

Something in how/when Code displays the trust dialog appears to have
changed, failing the test.  I am not sure it makes sense for us to be
testing upstream code anyway.

* Use regular Node for watch

Since we spawn the watch script with ts-node it was using ts-node for
the web server spawn as well.  With latest Code there are for some
reason type errors (it cannot find @types/node) but this is already
compiled code which already passed type checks; any type errors here are
useless.  To fix spawn with regular Node.

* Fix some workers not loading
2023-02-07 16:22:06 -06:00
dependabot[bot]
e5a2537aee
chore: bump limiter from 1.1.5 to 2.1.0 (#6001)
* chore: bump limiter from 1.1.5 to 2.1.0

Bumps [limiter](https://github.com/jhurliman/node-rate-limiter) from 1.1.5 to 2.1.0.
- [Release notes](https://github.com/jhurliman/node-rate-limiter/releases)
- [Commits](https://github.com/jhurliman/node-rate-limiter/commits)

---
updated-dependencies:
- dependency-name: limiter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update limiter usage

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Asher <ash@coder.com>
2023-02-06 13:12:57 -06:00
dependabot[bot]
bce6239801
chore: bump @typescript-eslint/eslint-plugin from 5.41.0 to 5.51.0 (#6002)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.41.0 to 5.51.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.51.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-06 18:59:24 +00:00
dependabot[bot]
93589edb61
chore: bump eslint-config-prettier from 8.5.0 to 8.6.0 (#6003)
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 8.5.0 to 8.6.0.
- [Release notes](https://github.com/prettier/eslint-config-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v8.5.0...v8.6.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-06 12:41:05 -06:00
Asher
bfcca5fcc0
Remove docs preview
This is failing CI on Dependabot PRs.  Opted to just remove it since
most (all?) PRs will be from forks and this workflow will not run
anyway.  If we figure out the secret situation we can add it back.
2023-02-06 09:07:34 -09:00
Asher
a76c0c5742
Remove PR npm package
It is causing CI to fail for Dependabot (no access to the token) and it
does not work with forks and currently there is no one who pushes
straight to the repo so this will never be used.

Can always add it back if we figure out how to make the secrets work.
2023-02-06 08:56:47 -09:00
renovate[bot]
6e1b9131e9
chore(deps): update aquasecurity/trivy-action digest to cff3e9a (#5994)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-02-06 11:36:05 -06:00
Dean Sheather
776d57b12b
chore: enable dependabot (#5997) 2023-02-06 11:32:52 -06:00
Asher
026879b78c
Update Code to 1.74.3 (#5989) 2023-02-06 10:24:37 -06:00
Joe Previte
401d423dfd
docs: add usage in Coder (#5975)
* docs: add difference between Coder

Add a short block explaining the difference between code-server and
Coder.

* docs: add new doc coder.md under Install

This adds a new doc explaining how to install code-server in a Coder
workspace using Terraform.
2023-01-27 17:14:54 +00:00
Joe Previte
96d9c5eb0f
docs: add port-forwarding (#5979) 2023-01-27 16:41:27 +00:00
Kyle Carberry
134e9b40b7
chore: fix requirements so it navigates to docs (#5973)
This was navigating to the relative markdown file,
which is confusing when some links go to the docs.
2023-01-17 17:09:24 +00:00
zhaozhiming
7c2aa8c417
feat: add i18n in login page (#5947)
* feat: add i18n in login page

* fix: add word space and put the app name into the title

* fix: remove duplicate replace title

* fix: prettier format code

* fix: fix typescript check warning

* fix: add zh-cn locale file code owner

* fix: use existing flag locale to the login page

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2023-01-13 17:42:49 +00:00
Joe Previte
d40a9742c0
feat(ci): add lint-actions step to build.yaml (#5957)
* feat(ci): add lint-actions step to build.yaml

This adds a new job to the Build CI pipeline to lint our GitHub Actions.

By doing this, we can prevent typos from slipping in.

Fixes #5776

* fix: disable shellcheck in actionlint

I don't think we want to enable this for now.

* fix: ignore set-output warnings for now

It's deprecated but there isn't a reason to move away from using it yet.
2023-01-13 17:21:56 +00:00
renovate[bot]
67416b7b79
fix(deps): update dependency argon2 to v0.30.3 (#5937)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-01-05 08:27:11 -07:00
Joe Previte
9e266db379
chore: use matchUpdateTypes (#5942) 2023-01-04 23:08:39 +00:00
Joe Previte
834d16df2a
docs(CONTRIBUTING): add standalone release section (#5946)
* docs: update section in troubleshooting

* docs: add section on standalone release
2023-01-04 15:47:34 -07:00
Joe Previte
d835cb9865
docs: add new termux installation method (#5938)
* docs: add new termux installation method

* fixup: formatting
2023-01-04 17:16:23 +00:00
Joe Previte
9e9cbd846d
chore: update renovate to include peer deps (#5940) 2023-01-03 15:14:21 -07:00
Joe Previte
077a8f6a6b
chore: pin json5 to 1.0.2 (#5936)
* chore: pin json5 to 1.0.2

* fixup: formatting
2023-01-03 20:57:16 +00:00
Joe Previte
4e280811f9
chore: update renovate and deps (#5914)
* chore: update renovate.json ignoreDeps

ansi-regex, env-paths and limiter all switch to ESM which we can't
support at the moment so ignore updates for now.

* chore: update actions/cache@v3

* chore: update minor deps

* chore: add pretteir to renovate.json
2023-01-03 17:28:58 +00:00
Joe Previte
3eb35979f0
chore: update aur job in publish.yaml (#5915)
This uses the `env.VERSION` which should fix the issue with version being blank.
2022-12-22 13:58:20 -06:00
Joe Previte
8377bd23df
chore: upgrade Code to 1.74.1 (#5909)
* chore: upgrade Code to 1.74.1

* chore: remove require in integration.diff

I don't know what the impact of this is but in 192c67db71
they removed the usage of `require` in `server.main.ts`.

More details in PR: https://github.com/microsoft/vscode/pull/165831

* chore: update marketplace.diff

* chore: update sha hash in webview.diff

* chore: update disable-builtin-ext-update.diff

If my logic is right, then this patch is now simplified thanks to this:
https://github.com/microsoft/vscode/blob/1.74.1/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts#L1238

* chore: refresh proxy-uri patch

* chore: refresh local-storage.diff

* chore: refresh sourcemaps.diff

* chore: refresh disable-downloads.diff

* chore: refresh display-language.diff

* chore: refresh getting-started.diff

* docs: update testing notes for cli-window-open

* docs: update telemetry testing instructions

* fix: add GITHUB_TOKEN to build code-server job

Downloading @vscode/ripgrep is failing only in CI so adding this
environment variable to see if it increases the rate limit.

Ref: https://github.com/microsoft/vscode-ripgrep#github-api-limit-note

* refactor: use own cache key build code-server job

* temp: disable vscode test

* refactor: delete wrapper test

* Revert "refactor: delete wrapper test"

This reverts commit 3999279b73c3519c7dbb03dfc7076bf26f717e13.

* refactor: move vscode tests to e2e (#5911)

* wip: migrate vscode tests to e2e

* feat: add codeWorkspace to global setup

* refactor: only use dir in spawn when we should

* wip: migrate more tests

* refactor: move all vscode tests to e2e

* refactor(ci): move unit to own job

* fixup: add codecov to unit test step

* Update test/e2e/models/CodeServer.ts

* Update test/e2e/models/CodeServer.ts

* docs: add note about intercept requests

* refactor: rm unused clean() calls

* refactor: delete duplicate test

* refactor: update 'should not redirect' test

* refactor: rm unused imports

* refactor: rm unnecessary navigate call in test

* fixup: formatting

* wip: update test

* refactor: modify assertion for proxy

* fixup: use REVERSE_PROXY_BASE_PATH

* refactor: add helper fn getMaybeProxiedPathname

* fixup: formatting

* fixup: rm unused import

* chore: increase playwright timeout

* Revert "chore: increase playwright timeout"

This reverts commit a059129252216c5f5cba83e9bca3d90cf658b7be.

* chore: rm timeout
2022-12-22 10:25:28 -07:00
Toby Cm
930791d249
Added how to disable file downloads in faq (#5907) 2022-12-19 16:00:42 +00:00
Joe Previte
5c21015dbe
release: v4.9.1 (#5893)
* chore: add 4.9.1 to changelog

* chore: bump Helm to 4.9.1
2022-12-16 12:07:36 -07:00
Joe Previte
fa39d4761a
fix: dst path in nfpm (#5875)
* fix: dst path in nfpm

* trigger ci

* Update ci/README.md
2022-12-16 11:35:13 -07:00
Joe Previte
87f606db2a
chore(ci): update linux cross-compile runner 20.04 (#5896) 2022-12-16 08:54:23 -07:00
Joe Previte
06483bc59d
refactor: rm node_mods caching in release workflow (#5895) 2022-12-15 14:24:59 -07:00
Joe Previte
9012ddfe79
refactor: use separate cache key in release, run standalone after caching (#5859)
* refactor: remove keytar dep in cross-compile

* refactor: try other keytar package

* refactor: remove keytar step in cross-compile

* fix: manually remove keytar

* try this first

* I think this is it

* Revert "I think this is it"

This reverts commit 5c566b0c0126da1d3baa2f3c69e26fe1cc63fe93.

* okay this is it

* fixup

* try legacy peer

* remove keytar before standalone

* wrong path

* maybe

* revert: change *npm* back to npm*

* revert: don't uninstall keytar

* fix: use npm run standalone-release

* fixup formatting

* Revert "refactor: remove yarn.lock steps (#5850)"

This reverts commit 907747d3949301d8836e71938940f6275b016062.

* fixup: remove the --exclude

* refactor: remove yarn.lock check

* try ddd in postinstall

* refactor: cache before release:standalone

* refactor: add os to cache key in release

* chore: formatting

* Update ci/build/npm-postinstall.sh

* fixup: formatting
2022-12-12 22:03:07 +00:00
Joe Previte
1efc5f104e
fix: use npm and yarn consistently in build and release (#5852)
* refactor: remove keytar dep in cross-compile

* refactor: try other keytar package

* refactor: remove keytar step in cross-compile

* fix: manually remove keytar

* try this first

* I think this is it

* Revert "I think this is it"

This reverts commit 5c566b0c0126da1d3baa2f3c69e26fe1cc63fe93.

* okay this is it

* fixup

* try legacy peer

* remove keytar before standalone

* wrong path

* maybe

* revert: change *npm* back to npm*

* revert: don't uninstall keytar

* fix: use npm run standalone-release

* fixup formatting

* Revert "refactor: remove yarn.lock steps (#5850)"

This reverts commit 907747d3949301d8836e71938940f6275b016062.

* fixup: remove the --exclude

* refactor: remove yarn.lock check

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-12-12 21:41:29 +00:00
Joe Previte
ef5865f506
fix: add VERSION to env in publish.yaml (#5868)
When I did the last release, `VERSION` wasn't defined which lead to a
blank string in the PR title and the commit message here:

https://github.com/coder/code-server-aur/pull/24

This should fix that.
2022-12-12 21:24:06 +00:00
Joe Previte
48588ee542
chore: update download artifacts in release (#5841) 2022-12-12 17:47:27 +00:00
Geoffrey Huntley
ac6b5bd4e6
chore(nfpm): bump to latest version (#5860) 2022-12-12 08:52:33 -07:00
Joe Previte
0ca6620ee6
fix: add missing keytar deps (#5851)
* fix: add missing keytar deps

* fixup
2022-12-08 11:30:08 -07:00
Joe Previte
907747d394
refactor: remove yarn.lock steps (#5850) 2022-12-08 10:44:27 -07:00
Joe Previte
d8995ec0b8
refactor: use npm in build.yaml (#5849) 2022-12-08 10:37:42 -07:00
Joe Previte
c088e73063
fix: use proper npm casing postinstall (#5848)
* fix: use proper npm casing postinstall

* chore: add log for npm config user agent

* fixup
2022-12-08 10:22:40 -07:00
Joe Previte
83c3453f50
fix: quote VERSION in jq command in release (#5845) 2022-12-07 22:19:20 +00:00
Joe Previte
3182be634e
refactor: use npm in build steps and postinstall.sh (#5844)
* refactor: default to npm in postinstall.sh

yarn has a bug where it will try to update dependencies even if
`yarn.lock` is present. Therefore we're defaulting to `npm` to prevent
further issues.

* refactor: exclude yarn.lock in standalone

By excluding `yarn.lock`, we prevent issues where the user must use
`yarn` instead of `npm` to install code-server.
2022-12-07 15:04:50 -07:00
Joe Previte
1297e9ac88
chore: update qs version (#5840) 2022-12-07 14:57:08 -06:00
Joe Previte
1484bee621
release: 4.9.0 (#5772)
* wip: changelog

* fixup

* fix: add +x to product.json in build-vscode

While testing a pre-release, there seems to be a bug with the file
permissions for `product.json`. Adding `chmod +x` to see if that fixes
it.

* chore: increase timeout

* fix: keep product.json file permissions in release

When we added the change to modify the `package.json` version using `mv`
and `jq` we didn't account for lost file permissions.

This caused a bug only happening in CI.

This should fix it by giving it 755 via `chmod`.

* trigger ci

* chore: update package.json bust cache

* fixup!: fix: keep product.json file permissions in release

* Revert "fix: add +x to product.json in build-vscode"

This reverts commit fc4d2b532f41277d6b93243cd6bd2ba2434f80d6.

* chore: pin ubuntu runner in build code-server

* chore: update prettierignore

* chore: add notes to changelog

* chore: use ubuntu-22.04 for e2e

* chore: pin all jobs in build to ubuntu 20.04

* feat(wrapper): add tests for isChild

* fixup: include description ts-expect-error comment

* chore: update CHANGELOG

* chore: update Helm chart

* fixup: use our childProcess

* Update CHANGELOG.md

Co-authored-by: Asher <ash@coder.com>

Co-authored-by: Asher <ash@coder.com>
2022-12-06 13:28:27 -07:00
Pfau, Sascha
f43082e142
fix installing code-server on manjaro image (#5834)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-12-05 15:43:22 -07:00
Geoffrey Huntley
b6adcf50c6
feat(securitytxt): add security.txt (#5827) 2022-12-05 15:43:00 -07:00
Joe Previte
df49838739
chore: add VERSION check in build-vscode.sh (#5823) 2022-12-01 11:51:07 -05:00
renovate[bot]
2cbb1135e1
chore(deps): update minor dependency updates (#5787)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-11-30 09:51:03 -07:00
Geoffrey Huntley
43e8c439bf
housekeeping(branding): update coder/coder branding (#5781) 2022-11-14 12:28:42 -06:00
Joe Previte
74edfe7c43
chore: fix typo in release.yaml (#5774) 2022-11-10 13:48:56 -07:00
Joe Previte
69d469b714
chore: update Code to 1.73.1 (#5769) 2022-11-10 12:46:21 -07:00
Joe Previte
e2f585f368
docs: add --edge to install section (#5767)
This adds documentation for the flag `--edge` which we've had for a
while but forgot to document.

Fixes #5717

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-11-10 11:50:37 -07:00
Joe Previte
3367e1ad4e
chore: upgrade Code to 1.73.0 (#5751)
* chore: upgrade Code to 1.73.0

This upgrades Code to 1.73.0 via the tag.

* chore: refresh integration patch

* chore: clean up base-path patch

Only change here was they moved
lib/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.ts

so I had to update it. Code still looks the same though.

* chore: refresh proposed-api patch

* chore: update marketplace patch

Simlar to a previous patch, the location of
lib/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.ts
changed so I had to update this patch.

No changes to code itself.

* chore: update hash in webview patch

I believe there was only one to update but I may have missed one.

* chore: refresh disable-builtin-ext-update.diff

* chore: refresh update-check

quilt couldn't apply it so I had to add one change in manually to
lib/vscode/src/vs/server/node/serverEnvironmentService.ts

* chore: refresh logout patch

* chore: refresh proxy-uri patch

* chore: refresh local-storage patch

* chore: refresh sourcemaps patch

* chore: refresh disable-downloads patch

* chore: refresh telemetry patch

* refactor: re-apply display-language patch

This kinda got removed but I added it back in.

* refactor: drop exec-argv patch

This was accepted upstream! :tada

* chore: refresh getting-started patch

* fixup: add missing slash in marketplace

* fixup: update notes proposed-api patch

* fixup: support this.args.log as string

Seems like upstream now uses a string[] for this. For now, support
string.

See
2b50ab06b1

* Revert "fixup: support this.args.log as string"

This reverts commit 78c02a1f137655e27f3137e1d07a274e482baf6b.

* fixup!: add log to toCodeArgs

This was changed upstream from `string` to `string[]` so now we convert
to an array in `toCodeArgs`.

See 78c02a1f13

* fixup: update telemetry description
2022-11-09 22:10:03 +00:00
renovate[bot]
c885c96644
chore(deps): update minor dependency updates (#5720)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-11-09 14:03:07 -07:00
Joe Previte
b978655c07
refactor: get version dynamically (#5753)
* refactor: get version dynamically

* chore: remove version

* fixup: missing quotes

* refactor: drop global VERSION

* wip: updating ersion in publish

* refactor: update publish.yaml with version changes

* refactor: release.yaml with new version changes

* refactor: update build.yaml with version changes

* chore: update maintainer

* fixup: update version in build-vscode

* fixup: fix github env version

* try macos only

* try again

* last resort

* joe again

* this oneee

* fixup: this should work

* try using inputs

* docs: update release notes

* fixup!: use env.VERSION in docker step

* fixup!: comment get and set version

* fixup!: remove compress release package comment

* fixup!: use $VERSION in npm-version

* refactor: set VERSION in build VS Code step

* refactor: use 0.0.0 in package.json version

* refactor: delete release-prep script

* Update ci/build/build-vscode.sh

* fixup!: remove extra VERSION set in aur
2022-11-08 22:45:01 +00:00
Joe Previte
5a8bb2b8e8
release: v4.8.3 (#5762)
* chore: update version to 4.8.3

* chore: update CHANGELOG

* fixup!: update chart version

* fixup: update changelog
2022-11-07 19:47:40 +00:00
Kyle Carberry
77c3cd3aa1
Improve getting started Coder CTA (#5752)
* Improve getting started Coder CTA

This wasn't very standout-ish before, and I think it's
wise for us to experiment with directing users to Coder.

* Update nix flake

* Update diff

* Add advert to code-server install

* Fix patch to reset columns if getting started is disabled

* Update text for advert
2022-11-07 11:06:51 -07:00
KevinZønda
ff8ea36b27
feat: install script support arch-like (#5757) 2022-11-07 17:48:21 +00:00
Joe Previte
f56ce5b66d
feat: add test for markdown webview (#5740)
* feat: add test for markdown webview

* fixup!: use frameLocator
2022-11-03 15:08:12 -07:00
Joe Previte
2530a0d265
release: 4.8.2 (#5743)
* chore: bump version to 4.8.2

* chore: update CHANGELOG

* docs: add back line in publishing release

See https://github.com/coder/code-server/pull/5732#discussion_r1010685933

* Revert "chore: bump version to 4.8.2"

This reverts commit 5d70994f22e461602a64f39771b27c78d6c38dcf.

* fixup: use 4.8.2-rc.1

* docs: add release candidate notes

* refactor: warn plugin range incompatibble

* chore: bump version 4.8.2
2022-11-02 14:34:38 -07:00
Joe Previte
a432a0d697
docs: update faq for getting started (#5731) 2022-11-01 17:48:32 +00:00
Joe Previte
505f07a9bc
fix: minor fixes related to release (#5732)
* fix: use * for test plugin engines

This removes the need to update this version with every version change.

* refactor: use npm-package in release assets

This adds a new job to `release.yaml` to upload the `npm-package` to the
release assets which will also allow us to download it in the
`publish.yaml` workflow.

* docs: update release instructions

* fixup!: use package.tar.gz
2022-11-01 10:16:30 -07:00
Joe Previte
ee47293cf6
Revert "Test branch (#5733)" (#5734)
This reverts commit 5c751f26ee7ba221bfc04be9545a7f40eb132d80.
2022-10-28 13:48:36 -07:00
Joe Previte
5c751f26ee
Test branch (#5733)
* fix: use * for test plugin engines

This removes the need to update this version with every version change.

* refactor: use npm-package in release assets

This adds a new job to `release.yaml` to upload the `npm-package` to the
release assets which will also allow us to download it in the
`publish.yaml` workflow.

* docs: update release instructions
2022-10-28 13:43:21 -07:00
Joe Previte
7c0c0b0c29
fix: merge in master from coder/code-server-aur (#5730)
This ensures that the branch is up-to-date with coder/code-server-aur
before opening a PR.
2022-10-28 10:44:00 -07:00
Joe Previte
649985af8e
feat: customize getting started page (#5707)
* feat: add getting-started patch

This modifies the text on the Getting Started page to promote
coder/coder.

* feat: add --disable-getting-started-override

This adds a new CLI flag to code-server called
`--disable-getting-started` which will be used in Code to not use
Coder's custom Getting Started text.

* refactor: conditionally show coder getting started

This modifies the getting started patch changes to work with the new
`--disable-getting-started-override`.

The flag is false by default meaning the Coder getting started is shown.
By passing the flag to code-server, it will not be shown.

* docs: update faq for getting started override

* docs: update getting-started patch description

* fixup!: update patch

* fixup!: unit test

* feat: add more tests

* fixup!: use correct env var in tests

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-28 16:59:24 +00:00
Joe Previte
ca182b9fb5
chore: prettierignore updates and setup-helm upgrade (#5721)
* chore: update prettierignore

* chore: upgrade setup-helm 3.4
2022-10-28 16:15:19 +00:00
Joe Previte
cc8ce3b3c6
release: 4.8.1 (#5722)
* chore(release): bump version to 4.8.1

* chore: bump helm-chart

* chore: update CHANGELOG
2022-10-28 08:55:45 -07:00
Joe Previte
ba44f6cc97
release: 4.8.1-rc.1 (#5713)
* chore(release): bump version to 4.8.1

* fixup

* revert: don't change to 4.8.1
2022-10-26 18:50:08 +00:00
Joe Previte
e6d2d72f9c
fix: CSP and webview errors (#5712)
* fix: update hashes in webview patch

We missed a hash update and also had the wrong hash for another HTML
file which caused issues in 4.8.0.

* refactor: move parent-origin into webview
2022-10-26 11:20:11 -07:00
Joe Previte
005fa87699
chore(deps): downgrade argon2 to 0.29.0 (#5704)
Not sure why but we were seeing argon2/node-gyp issues after this
upgrade while running `yarn release:standalone`. For now, downgrading to
0.29.0 seems to fix the issue when testing locally.

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-10-25 16:56:13 +00:00
Joe Previte
b19996176e
chore(deps): update prettier and eslint (#5700)
* chore(deps): update eslint/prettier deps

* refactor(cli): only import load from js-yaml

* chore(deps): remove minimatch resolution

* fixup! update yarn lock
2022-10-25 16:39:06 +00:00
Joe Previte
1134ee1c79
fix: pin helm to v3.10.1 (#5703)
Due to https://github.com/Azure/setup-helm/issues/99, this pins the
version to v3.10.1 as a temporary fix.
2022-10-25 16:24:53 +00:00
renovate[bot]
606811fbfd
chore(deps): update aquasecurity/trivy-action digest to e55de85 (#5702)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-25 08:32:55 -07:00
Joe Previte
2f583b082e
release: 4.8.0 (#5698)
* chore(release): bump version to 4.8.0

* chore: update changelog

* chore: bump helm chart

* Update CHANGELOG.md

Co-authored-by: Asher <ash@coder.com>

* Update CHANGELOG.md

Co-authored-by: Asher <ash@coder.com>

* fixup!: cleanup changelog

Co-authored-by: Asher <ash@coder.com>
2022-10-24 16:23:03 -07:00
Joe Previte
59ef715d8b
chore: update minimatch (#5697) 2022-10-24 13:55:54 -07:00
Wei HU
bbf18cc6b0
feat: add docker image release for Ubuntu based image (#5688) 2022-10-24 18:41:19 +00:00
Joe Previte
031e903979
feat: enable forwarded ports using built-in proxy (#5673)
* feat: enable ports panel in proxy-uri patch

This makes the forwarded ports panel enabled by default.

* feat: add tunnelProvider in proxy-uri patch

This adds a `tunnelProvider` along with a `tunnelFactory` so that ports
are forwarded and use code-server's built-in proxy.

* fixup!: update import

* fix: skip uri modification if authority host match

This adds a check in our `resolveExternalUri` patch to skip modifying if
the `authority` and the `location.host` match to prevent
`localhost:<port>/proxy/<port>` from being modified.

* fixup!: refresh patch

* fixup!: move authority check up

* fixup!: remove comment

* fixup!: add trailing slash
2022-10-24 18:11:44 +00:00
Kyle Carberry
430b567e69
fix: Enable the BROWSER environment variable (#5695)
This was breaking the automatic opening of links in GIT_ASKPASS
on a git clone. I've tried to execute this script manually, and
it does indeed work!
2022-10-24 11:26:36 -05:00
Joe Previte
efce00582b
chore: update Code to 1.72.2 (#5650)
* chore: update Code to 1.72.2

* chore: refresh integration patch

* chore: refresh base-path

* chore: refresh proposed-api patch

* chore: refresh marketplace patch

* chore: refresh webview patch

* chore: refresh disable-builtin patch

* chore: refresh logout, update-check patches

* chor: refresh proxy-uri patch

* fix: delete unique-db patch

This was supposed to be removed in https://github.com/coder/code-server/pull/5519

Looks like I didn't update the series or actually delete the patch.

* fix: drop log-level patch

This was merged upstream!

* chore: refresh local-storage patch

* chore: refresh service-worker patch

* chore: refresh sourcemaps patch

* chore: refresh disable-downloads patch

* chore: refresh telemetry patch

* chore: refresh language patch

* chore: refresh cli-window-open patch

* Revert "fix: delete unique-db patch"

This reverts commit ca0506c5f6b49da5644697bb2f5b29d135a8d201.

* fixup!: rm extra spaces integration patch

* fixup: space

* fixup! update unique-db patch

* fixup!: update hash in webview patch

* fixup! update marketplace patch

* fixup!: remove comma
2022-10-17 16:30:39 -07:00
renovate[bot]
4a06d97f84
chore(deps): update dependency doctoc to v2.2.1 (#5648)
* chore(deps): update dependency doctoc to v2.2.1

* chore: update doctoc version in build.yaml

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-10-14 22:59:21 +00:00
renovate[bot]
514dbf315e
chore(deps): update dependency normalize-package-data to v5 (#5649)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-14 09:36:56 -07:00
Joe Previte
690e0aff45
fix: add handle for resolveExternalUri (#5624)
* fix: add handle for resolveExternalUri

This adds a fix to properly handle `resolveExternalUri` which is used by
extensions like Tabnine.

* fixup!: update patch

* fixup!: force update proxy patch

* fixup!: use proxyEndpointTemplate else manually add

* fixup!: throw error if productConfiguration missing

* feat(testing): add asExternalUri

This modifies the test extension used in e2e test by registering a new
command for testing `asExternalUri`.

* feat: add e2e test for asExternalUri

* docs: update playwright setup comments

* feat: add support for VSCODE_PROXY_URI

* chore: refresh patches

* feat: add test for VSCODE_PROXY_URI

* chore: add metadata to lang extension

* fixup!: fix part of service-worker patch

* fixup!: remove e2e test, update patch notes

* fixup!: refresh disable-downloads

* fixup!: formatting
2022-10-14 16:08:58 +00:00
Alwin Lohrie
714afe0cc7
feat: add customization options for the login page (#5633)
* add customization options for the login page

* add unit tests

* add test for correct welcome text when none is set but app-name is

Signed-off-by: niwla23 <46248939+niwla23@users.noreply.github.com>

* add test for no app-name set and check in title too

Signed-off-by: niwla23 <46248939+niwla23@users.noreply.github.com>

Signed-off-by: niwla23 <46248939+niwla23@users.noreply.github.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-10-13 22:32:20 +00:00
Joe Previte
71a127a62b
refactor: update prettier and doctoc (#5605)
* docs: add toc to CODE OF CONDUCT

* chore: add prettier ignore blocks to docs

* chore: update styles for Dockerfile

* refactor: separate prettier, doctoc

This does a couple things:
- update `.prettierignore`
- split `prettier` and `doctoc` commands. you can still run with `yarn
  fmt`
- delete `fmt.sh` and add `doctoc.sh`

By doing so, we can run tasks in parallel in CI and we should also have
less false positives than before with `yarn fmt` locally.

* refactor: update prettier job, add doctoc

This modifies the prettier job to use actionsx/prettier. It also adds a
job for `doctoc`.

* chore: upgrade to prettier 2.7.1

* chore: pin doctoc to 2.0.0

* fixup!: add .pc to prettierignore

* feat: add --cache to prettier cmd
2022-10-13 22:16:55 +00:00
renovate[bot]
d4707d1d24
fix(deps): update dependency argon2 to ^0.30.0 (#5647)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-10-13 20:10:23 +00:00
kotborealis
f61ec4a41c
add CLI argument --disable-workspace-trust (#5638)
Add CLI flag to disable workspace trust feature, as
described in documentation:
https://code.visualstudio.com/docs/editor/workspace-trust

Add test for workspace trust argument.
2022-10-13 19:57:04 +00:00
Merith
ba68656353
fix potential typo for "installing with npm" (#5630)
the link for installing with NPM on line 103 was written as

[installing with npm][./npm.md](./npm.md) `[installing with npm][./npm.md](./npm.md)`
I fixed it to look like
[installing with npm](./npm.md) `[installing with npm](./npm.md)`
2022-10-10 17:55:56 +00:00
Möbius
b2f043ab41
Update guide.md (#5614)
Co-authored-by: Mobius <ELXIAGHT@outlook.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-10-07 18:04:22 +00:00
Daniil Gentili
b562d4a880
Allow opening files at a specific line and column (fixes #5619) (#5620)
* Allow opening files at a specific line and column (fixes #5619)

* Add isDirectory test
2022-10-06 11:12:21 -07:00
unknowndevQwQ
3a9eb312b1
feat: add doas support (#5600)
Some people may have some reason to drop sudo and switch to doas
2022-10-04 16:45:25 +00:00
Joe Previte
77bbed4831
release: 4.7.1 (#5607)
* chore(release): bump version to 4.7.1

* docs: update MAINTAINING

* chore: update release_template

* chore: update CHANGELOG

* chore: bump helm chart version

* Update ci/helm-chart/Chart.yaml

Co-authored-by: Asher <ash@coder.com>

* fixup!: changelog

Co-authored-by: Asher <ash@coder.com>
2022-09-30 14:44:45 -07:00
Joe Previte
3ac2307b5c
fix: add node to path (#5598)
* fix: remove deprecated symlink

* refactor: remove deprecation notice

* fixup! refactor: remove deprecation notice

* fix: add node to path

* fixup: shellcheck

* Update src/node/wrapper.ts

Co-authored-by: Asher <ash@coder.com>

* fixup!: fix: remove deprecated symlink

* Update ci/build/build-vscode.sh

Co-authored-by: Asher <ash@coder.com>

* Update ci/build/build-vscode.sh

Co-authored-by: Asher <ash@coder.com>

* fixup: use NODE_EXEC_PATh

* Update ci/build/build-vscode.sh

Co-authored-by: Asher <ash@coder.com>

Co-authored-by: Asher <ash@coder.com>
2022-09-29 18:02:53 -05:00
Joe Previte
8629d6a474
refactor: run security on package.json changes (#5602)
* refactor: run security on package.json changes

* fixup: add to main push too
2022-09-29 14:46:48 -05:00
Joe Previte
7f0c4d785f
chore: update vm2 to 3.9.11 (#5601) 2022-09-29 10:05:14 -07:00
unknowndevQwQ
b6aeb4bfab
fix: fix can't run it as expected in freebsd (#5595)
In freebsd, su -c expects a login class argument instead of a command, if -c is preceded by a username, then -c and the arguments that follow will be passed as shell arguments
2022-09-28 21:06:24 +00:00
Joe Previte
acdbefb986
docs: update telemetry patch (#5596)
This adds instructions on how to test the telemetry patch. Eventually we
will add a test for it but for now, this makes it 10x easier to test.
2022-09-27 14:09:53 -07:00
Joe Previte
05289d3eb6
chore(ci): move platform steps to release (#5587)
* refactor: move platform steps build -> release

* fixup! refactor: move platform steps build -> release

* refactor: download npm package

* refactor: upload release-packages to draft

* refactor: remove draft step

* refactor: e2e rely on build now

* refactor: use npm package in e2e

* fix: update release workflow

* fixup: update cache key

* fixup: checkout submodules in e2e steps

* fixup: try install in release dir

* fix: copy node to release package

* docs: add notes about test for terminal

* fixup

* try cp instead

* try this

* fixup: clean it all up

* fixup: update names

* fixup: add proxy back

* fixup: add comment
2022-09-27 11:46:37 -07:00
Shawn Weeks
3264187419
Set RPM Upgrade Flag (#5588) 2022-09-26 13:04:36 -07:00
Joe Previte
3256157a3f
chore: update code to 1.71.2 (#5580)
* chore: update code to 1.71.2

* chore: update telemetry patch

It appears part of the fix has been implemented upstream.

* refactor: drop safari-console patch

This has been fixed upstream.
2022-09-23 22:51:41 +00:00
Joe Previte
fdec34cf85
refactor: drop connection-type patch (#5585) 2022-09-23 20:51:44 +00:00
Asher
7e98628167
fix: installer tests (#5578)
Also rename from yml to yaml.
2022-09-23 00:15:26 +00:00
renovate[bot]
42c21c9684
chore(deps): update tj-actions/changed-files action to v26 (#5579)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-22 19:57:54 +00:00
Joe Previte
51677f0819
feat(ci): refactor build workflow (#5572)
* refactor: remove stylelint

* refactor: move shellcheck to separate job

* refactor: add helm script and job

* refactor: add eslint job and yarn script

* fix(test/tsconfig): exclude test-plugin

* refactor: delete lint, add typecheck job

* refactor: remove prebuild

* wip: add notes about unit test refactor

* refactor: delete buggy socket test

This test was really added to in get cover specific lines but it's buggy
and only passes sometimes locally. I think it's okay to remove because:
- it's an implementation detail (not user facing)
- not preventing any specific regressions

* refactor: move test-plugin to integration suite

This seems more appropriate given this tests how a plugin might work
within code-server.

* wip

* wip: refactor vscode integration tests

* refactor: move unit tests to separate job

* fix: formatting

* Revert "wip: refactor vscode integration tests"

This reverts commit 13286bf4c9762b7d6c6176464d94b1fc316fb568.

* Revert "refactor: move unit tests to separate job"

This reverts commit 6c87b540b49c8d56266c8925c4fd32ed760b23bf.

* feat: collect codecov integration tests

* fixup! feat: collect codecov integration tests

* fixup! feat: collect codecov integration tests

* fixup!: move helm step

* fixup!: update ids for caching

* trigger ci

* trigger ci

* chore: clean up names in security.yaml

* fixup!: remove .tsx

* fixup!: change to src/**"

* fixup!: move helm cmd to yaml

* fixup!: always build test plugin

* fixup!: fix plugin typings

* fixup! add back flakey test

* fixup!: only install helm deps if changes

* fixup!: revert node mod caching

* dont keep, test for asher

* fixup!: add make to centos

* refactor: add test:native

This adds a new script to run native tests (i.e. --help which should run
in ci on all platforms).

* try updating glibc

* try 2.25

* Revert "refactor: move test-plugin to integration suite"

This reverts commit bc02005dc097a10b5216b616ff0bd7a911240748.

I couldn't get past some GLIBC errors in CI so moving back to unit
tests.

* Revert "try updating glibc"

This reverts commit 02ed560f223a8505cb5e6e2014055cb256a407b0.

* fixup!

* asher: again

* try this for ts changes

* fixup

* refactor: scripts.yml -> scripts.yaml

* fixup!: move lint-sh to scripts.yaml

* fixup!: use apk for lint scripts

* fixup! fixup!: use apk for lint scripts

* fixup!: remove typecheck step

* fix: pattern for lint ts files

* test: lint should fail

* fixup! fixup!: use apk for lint scripts

* Revert "test: lint should fail"

This reverts commit 158c64db044c24f2f8ffd082cc769f06876d6957.

* fixup!: skip cancel workflow on forks

Looks like the cancel action workflow can't run on forks due to secrets.

See https://github.com/andymckay/cancel-action/issues/4

* fixup: remove cancel-workflow

* fixup! fixup! fixup!: use apk for lint scripts

* fixup! fixup! fixup!: use apk for lint scripts

* fixup!: fix yarn key

* fixup!: add fetch-depth 0
2022-09-22 12:33:32 -07:00
Joe Previte
4223cf6e2b
refactor(ci): fix fetch-depth and add some caching (#5563)
* refactor: rename ci -> build.yaml

* feat: add build.yaml

* feat: add node caching to platform jobs

* trigger ci
2022-09-19 11:56:34 -05:00
Joe Previte
987c68a32a
feat: add release workflow (#5560)
* feat(ci): add draft release workflow

* refactor: delete old release-github workflows

* fixup! refactor: delete old release-github workflows

* fixup! refactor: delete old release-github workflows

* Update .github/workflows/release.yaml

* fixup!: remove release-notes.txt

* fixup!: change branch to current
2022-09-16 15:14:28 +00:00
Joe Previte
7ecfb95569
chore: update Code to 1.71.1 (#5558)
* chore: update Code to 1.71.1

* chore: refresh patches

* docs: add quilt refresh tip
2022-09-15 16:49:28 -05:00
Joe Previte
309a3b2c6e
chore: move security workflows (#5553)
* refactor: move security jobs to security.yaml

* fixup! refactor: move security jobs to security.yaml
2022-09-14 06:31:13 -07:00
renovate[bot]
b440054613
chore(deps): update codercom/code-server docker tag to v4.7.0 (#5551)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-12 11:08:24 -07:00
Joe Previte
dbe87c5494
fix(ci): specify ref in aur publish job (#5550) 2022-09-09 22:50:21 +00:00
Joe Previte
04f1080451
release: 4.7.0 (#5546)
* docs: update MAINTAINING

* refactor: use branch name in release-prep

This makes a minor improvement to the `release-prep.sh` script to grab
the version to update to from the branch name.

* chore(release): bump version to 4.7.0

* fixup: bump version

* docs: use latest instead of version

* fixup: bump Chart version

* chore: update CHANGELOG

* chore: add license to test package.json

* chore: bump @coder/logging to 3.0.0

* fix: change level to Warn
2022-09-09 15:15:39 -07:00
Joe Previte
5028169e63
refactor: heartbeat patch (#5545) 2022-09-09 17:47:57 +00:00
Joe Previte
3fb38414dd
docs: update patch testing instructions (#5543)
* docs: explain how to test exec-argv

* docs: explain how to test telemetry patch
2022-09-09 17:05:30 +00:00
Florian Ritterhoff
b486354d6e
Update to 1.71 (#5535)
* chore: update upstream code

* update patches for vs 1.71.0

the cli fix seems to be fixed in upstream, the telemtry patch requires (again) some fixing and adjustments.

* add safari fix.

* increase ci timeout

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-09-09 16:28:54 +00:00
Devin Jeanpierre
a1cf4b9ea5
Fix deb install instructions: ${VERSION}_foo (#5542)
The install instructions weren't copy-pastable: `$VERSION_foo` is the same as `${VERSION_foo}`, not `${VERSION}_foo`.

```sh
$ VERSION=4.6.1
$ curl -fOL https://github.com/coder/code-server/releases/download/v$VERSION/code-server_$VERSION_amd64.deb
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     9    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (22) The requested URL returned error: 404
$ echo curl -fOL https://github.com/coder/code-server/releases/download/v$VERSION/code-server_$VERSION_amd64.deb
curl -fOL https://github.com/coder/code-server/releases/download/v4.6.1/code-server_.deb
```
2022-09-07 16:23:36 -07:00
Joe Previte
64822d0f64
docs: add comment to npm-postinstall.sh (#5541) 2022-09-06 13:34:34 -07:00
renovate[bot]
74017ecc65
chore(deps): update robinraju/release-downloader action to v1.5 (#5538)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-09-06 13:34:04 -07:00
Joe Previte
da03a648c2
fix(npm): use correct flags and update version for npm (#5533)
* fix: update npm-postinstall.sh script

Add --legacy-peer-deps to deal with weird npm issue with vscode
dependencies.

See: https://stackoverflow.com/a/66620869/3015595

* fix: use npm in release-standalone

* chore: update package.json

* chore: bump plugin engine for tests
2022-09-06 11:03:27 -07:00
Joe Previte
6742e945cc
docs: fix typo in install.md (#5529) 2022-09-06 09:38:55 -07:00
Joe Previte
4e9ed56580
release: 4.6.1 (#5522)
* chore(release): bump version to 4.6.1

* chore: update reviewers in release-prep

* chore: update CHANGELOG

* chore: bump Helm chart
2022-08-31 14:53:14 -07:00
Joe Previte
8a227d9fa1
feat: add displayLang test (#5495)
* feat(e2e): add language extension to setup

This adds a slimmed-down version of the Spanish Language Pack and also
adds a `languagepacks.json` to the e2e `workspaceDir` which allows use
to run a test suite passing the `--locale es` flags to simulate a
different display language.

* feat: add e2e test for display language patch

This tests loading code-server in Spanish using the `--locale` flag.

* fixup!: use JSON.stringify for readability

* fixup!: add comment about langaugepacks temp fix

* fixup!: slim down translations

* fixup!: slim down package.json for lang. ext
2022-08-31 13:28:36 -07:00
Joe Previte
f9bfd58cf4
refactor: drop db migration patch (#5519)
* refactor: remove database migration patch & test

Drop migration code since it's been 6 months since 4.0.2 and we no
longer need this.

See: https://github.com/coder/code-server/issues/5482#issuecomment-1222608635

* chore: refresh patches
2022-08-30 23:14:21 +00:00
Edouard Vincent
ef3f4e82b2
docs: remove references to installing with yarn in favor of npm (#5518) 2022-08-30 12:00:11 -05:00
Asher
6262c7a0bf
fix: propagate execArgv (#5510)
* Use fork instead of spawn

We no longer do in-place updating so no need for the spawn.  The
advantage of a fork is that it preserves flags like --prof which you can
use to profile code-server.

Also I am not sure the comment about not being able to reload in place
with fork was even true to begin with.

* Refresh heartbeat patch

Seems to have gotten out of date a little.

* Propagate execArgv to extension host

This will let us profile the extension host.
2022-08-30 10:19:19 -05:00
Asher
101d4ee4ad
chore: add flake for development with Nix (#5509) 2022-08-29 09:41:29 -07:00
Joe Previte
d1acfad2a8
chore: fix npm publish logic (#5493)
* chore: clean up logging in npm script

* fix: catch error if npm version missing

npm changed the way the `npm view` command handles missing versions.
Before it exited with a non-error. Now it errors.

Ref: https://github.com/npm/cli/pull/5035

This modifies the script logic to handle those new changes.
2022-08-23 11:36:24 -07:00
renovate[bot]
ccbf0bebb7
fix(deps): update dependency argon2 to ^0.29.0 (#5492)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-08-23 16:18:52 +00:00
Joe Previte
f5a1e3a3fa
Update publish.yaml (#5490) 2022-08-23 08:29:22 -07:00
Joe Previte
3db08fdf51
Update CODEOWNERS (#5491) 2022-08-23 08:28:44 -07:00
Florian Ritterhoff
bc05a2f3b9
chore: update code (#5485)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-08-22 16:18:23 -07:00
Edouard Vincent
90f603549a
fix: generate shrinkwrap file for deterministic dependencies (#5071) 2022-08-22 16:07:57 -05:00
Joe Previte
8352a22e33
fix(testing): reduce flakiness in extension e2e tests (#5481) 2022-08-22 12:47:36 -07:00
Asher
33ee184ed7
release: 4.6.0 (#5469) 2022-08-19 14:08:39 -05:00
Joe Previte
6a7c3220b0
refactor(ci): combine publish workflows (#5471)
* refactor(ci): combine publish workflows

* fixup! refactor(ci): combine publish workflows
2022-08-19 08:40:00 -07:00
Joe Previte
9d8588b2ed
feat(ci): add aur job to npm-brew.yaml (#5462)
This adds a new job called aur which checkouts code-server-aur, updates
the files with the new version then opens a PR into the repo.

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-08-18 09:22:09 -07:00
renovate[bot]
61e2a9ac41
chore(deps): update aquasecurity/trivy-action digest to d63413b (#5473)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-18 01:38:36 +00:00
renovate[bot]
61673b5918
chore(deps): update aquasecurity/trivy-action digest to 1db49f5 (#5466)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-17 18:44:19 +00:00
Florian Ritterhoff
2bfe15b3e9
chore: update Code to 1.70 (#5422)
* Update upstream Code to 1.70

* Update CSP hashes

* Update comment on remote authority

Also remove it from script-src since it is invalid anyway.

* Use absolute path for disable download patch

Just to keep it consistent with the other imports.  We initially added
the patch like this so it was not part of the upgrade but might as well
fix it now.

* Fix inability to change language while code-server is running

Co-authored-by: Asher <ash@coder.com>
2022-08-16 20:27:23 -05:00
renovate[bot]
bef78e6a41
chore(deps): update aquasecurity/trivy-action digest to 12814ff (#5460)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-16 00:17:22 +00:00
Asher
6037468e0f
release: 4.5.2 (#5447) 2022-08-15 16:21:10 -05:00
Joe Previte
ba6b8da76b
docs: add proxying to angular app (#5457)
* docs(guide): add proxying to Angular app

* fixup: formatting

* fixup: formatting

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-08-15 19:27:50 +00:00
Asher
43b87edc72
fix: socket disconnections behind reverse proxies (#5451) 2022-08-15 18:23:23 +00:00
Anton Korzhuk
b091b00406
Sidebar icons (#5444) 2022-08-14 03:00:46 +00:00
Asher
17aaa8b347
fix: logout appearing with auth=none (#5449) 2022-08-11 13:26:47 -05:00
Rafael Calpena Rodrigues
2ec1e2de34
fix: authentication check in path proxy (#5442)
`proxy` should `await` for result of `authenticated` call otherwise since otherwise it will always appear to be authenticated as the promise is truthy.

Co-authored-by: Asher <ash@coder.com>
2022-08-11 00:05:49 +00:00
Joe Previte
c69f2c69f6
chore(testing): remove install/list tests (#5441)
Now that we have a test for `--help` which checks to make sure native
modules are working as expected, we don't need the `--install-extension`
test or the `--list-extensions` test.

We can also remove the `.vsix` fixture since we're not using that
either.
2022-08-10 22:59:36 +00:00
renovate[bot]
91589fd106
chore(deps): update dependency @types/node to v16 (#5170)
* Update Node types to 16

* Update Express core types

Fixes a number of conflicts it has with Node 16.

* Fix websocket router types

It seems req was `any` before so now we have to handle the types.  Also
it seems the socket is of type `stream.Duplex`, not `net.Socket`.

The ws types had to be updated to support the new type.

Unfortunately Code still uses the old type so cast for now.

In the web socket router just use a cast for the extra properties we
add.  We could add the types to the Express namespace but I am not sure
we really want these commonly accessible so keep with the casts for now.
Likely we should use Express's `locals` or something instead.

* Add missing return

Not sure why it only just now started complaining though.

Co-authored-by: Asher <ash@coder.com>
2022-08-10 16:15:52 -05:00
Joe Previte
3335d0a456
chore(ci): fix when npm job runs (#5440) 2022-08-10 11:43:28 -07:00
Joe Previte
6d8f30d579
feat: add --help integration test (#5434)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-08-10 15:23:24 +00:00
Joe Previte
11b2ef9846
feat: add test for EXTENSIONS_GALLERY (#5432)
* refactor: add env arg to runCodeServerCommand

This allows yous to pass environment variables to code-server's helper
when running integration tests.

* feat: add EXTENSIONS_GALLERY integration test

This test ensures EXTENSIONS_GALLERY is read when set and using the
`--install-extension` flag.

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-08-09 20:41:37 +00:00
DH Kim
a51c94190f
feat: add lifecycle hook to helm chart (#5397) 2022-08-09 14:40:05 -05:00
Joe Previte
5c18e3556b
docs: clarify cpus are virtual (#5428) 2022-08-09 14:17:18 -05:00
Mr. Blogger
6b9bb89f43
docs: add yarn installation method for termux (#5286) 2022-08-09 14:15:49 -05:00
SIGSEGV
7bb35af04f
docs: add OpenRC example (#5266)
Co-authored-by: SIGSEGV <bluenerd@protonmail.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
Co-authored-by: Asher <ash@coder.com>
2022-08-09 13:31:28 -05:00
Joe Previte
f178f0400b
feat(e2e): add support running behind proxy (#5348)
* docs: update maintaining

* chore(e2e): add maxFailures to playwright

* fix(ci): skip submodule in e2e job

We don't need the submodules for the e2e job. This will speed up the
checkout step.

* feat(ci): add test-e2e-proxy job

This adds a new job to CI to run our tests behind Caddy and simulate
code-server running against a reverse-proxy.

* refactor: make e2e work with reverse proxy

This refactors the e2e test in a couple ways:
- remove setting cookie in localStorage (instead we pass --auth none)
- refactor address() method to account for reverse proxy logic

* Update test/e2e/models/CodeServer.ts

* Update test/playwright.config.ts

* Update test/utils/constants.ts

Co-authored-by: Asher <ash@coder.com>

* Update test/utils/helpers.ts

Co-authored-by: Asher <ash@coder.com>

Co-authored-by: Asher <ash@coder.com>
2022-08-09 18:24:37 +00:00
Marshall Walker
efb5baec83
refactor: simplify manifest route (#5219)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-08-09 12:54:00 -05:00
Joe Previte
45e222b3c1
chore(ci): run npm job on pr merge (#5429) 2022-08-09 10:31:23 -07:00
renovate[bot]
04ff8c355b
chore(deps): update dependency alpine to v3.16 (#5426)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-08 22:32:43 +00:00
Kyle Carberry
ca8ed8e35b
chore: Improve coder/coder advertisement in README (#5425) 2022-08-08 19:21:55 +00:00
Asher
9087e0c091
fix: invoking code-server in integrated terminal (#5360)
* Include bin scripts for all platforms

These will get symlinked as part of the postinstall.  These scripts
provide everything ours does inside the integrated terminal plus more.

* Improve OS detection

Specifically for Windows although we do not yet support Windows.

Also standardize the duplicate arch functions since they had drifted
from each other bit.

* Remove duplicate asar symlink

Since standalone releases run the postinstall they will get the asar
symlink there.  That means the symlink will not exist for the npm
package and we will not need to ignore it.

The symlink portion is split out so it can be re-used for other
symlinks (for example linking bin scripts).

* Add symlinks to bin scripts

* Add test for opening a file from the terminal

* Add global Playwright timeout

Otherwise it will exceed the Actions timeout and get rudely killed
without any output.

* Make sed work on macOS

* Fix Node path in bin scripts

* Disable shellcheck expansion error

* Make scripts executable

* Remove .bak files created by sed

* Include Code build script in cache hash

Otherwise if we change the script it will not rebuild Code.

* Make sure the terminal opens

The selector was timing out even though it matched more than one element
but matching on the focused one appears to work.

In addition add a loop so it can keep trying to open the terminal
if something goes wrong with the focus.
2022-08-04 16:03:28 +00:00
renovate[bot]
0022473744
chore(deps): update aquasecurity/trivy-action digest to 0d7cf2d (#5401)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-04 04:08:37 +00:00
Anton Korzhuk
b2ed6b8461
replace inline svgs with icon_path (#5395)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-08-01 20:20:39 +00:00
Jiwon
da9e72cb69
Add #5174 comment on rsp install (#5294)
Fix typo
2022-08-01 16:04:41 +00:00
Kain
3054f09838
docs: define extraInitContainers (#5385)
Otherwise custom values will not be picked up by Flux/Helm
2022-08-01 10:31:20 -05:00
1submarine
de042173b2
docs: correct trial length (#5396) 2022-08-01 10:20:55 -05:00
renovate[bot]
f772d7bd13
chore(deps): update aquasecurity/trivy-action digest to 5144f05 (#5388)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-01 10:19:32 -05:00
renovate[bot]
23a84e156e
chore(deps): update minor dependency updates (#5377)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-27 12:44:52 -05:00
Raúl Martín
cb09650d7c
Update caddy installation steps (#5384)
The official installation instructions have changed again.
2022-07-27 12:44:12 -05:00
renovate[bot]
0e9ec02bef
chore(deps): update aquasecurity/trivy-action digest to 503d3ab (#5370)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-22 19:21:30 +00:00
Joe Previte
e79f6f3ad2
chore(ci): only run docs preview on docs changes (#5368) 2022-07-21 22:36:11 +00:00
renovate[bot]
40b650b7c7
chore(deps): update azure/setup-helm action to v3.1 (#5331)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-20 09:23:34 -07:00
Joe Previte
0659e565d0
fix: update branch for release assets download (#5359) 2022-07-19 23:25:53 +00:00
Joe Previte
f4fc2ebecf
release: 4.5.1 (#5354)
* chore(release): bump version to 4.5.1

* chore: bump helm chart

* chore: update CHANGELOG

* Revert "chore: bump helm chart"

This reverts commit 703b03b665bddc252d80ae674eb92e1bfbdec6ad.

* chore: bump helm chart to 3.0.0

* revert: remove bad change to manifes.json icon

* fix(ci): add package.json.version to code cachekey

Before this, creating a release sometimes prevented vscode from
rebuilding and using the cache instead. Now we use the
package.json.version in the cache key to "bust" the cache if the
package.json version is updated (aka a release).

Fixes #5316

* Update .github/workflows/ci.yaml

Co-authored-by: Asher <ash@coder.com>

* fixup: formatting

* Revert "refactor: remove version check e2e test"

This reverts commit b23c398b7d725e46b4b7a0bbc900aebc6bd277f3.

Co-authored-by: Asher <ash@coder.com>
2022-07-19 12:34:01 -07:00
strowk
de317a09fe
Allow more comprehensive affinity config (#5285)
Co-authored-by: Timur Sultanaev <t.sultanaev@reply.de>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-07-18 14:38:21 -07:00
Joe Previte
23a18786de
refactor(ci): use release in branch release name (#5352) 2022-07-18 14:38:07 -07:00
Joe Previte
033cdf2357
chore(ci): update glob-parent (#5353) 2022-07-18 14:37:54 -07:00
Asher
592973c1bb
fix: remove default memory limit (#5355)
Having NODE_OPTIONS set is unexpected and although the later flag should
override the previous flag it is not certain that will always be the
case.

Also some users are having issues with the 2 GB limit.
2022-07-18 14:37:35 -07:00
Tim Bordemann
530bb66d7c
Allow setting priorityClassName via helm chart (#5255)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-07-18 19:27:54 +00:00
Joe Previte
19f486b672
chore(prettier): ignore lib/vscode (#5347)
We were using an overrides command in our `.prettierrc.yaml` which
quickly became out of sync with Code's Prettier styles.

Instead, we simply tell Prettier to ignore `lib/vscode`.

This way, if you have `formatOnSave` on and you save inside
`lib/vscode`, you won't convert the file to use code-server's styles.
2022-07-15 21:13:13 +00:00
Joe Previte
907dd835e8
docs: add troubleshooting section (#5313) 2022-07-15 19:30:03 +00:00
Asher
646f2436b0
fix: output lost after hotswapping (#5346)
I think the pipe was closing the other streams when the child stream
closed so instead just write it one way.
2022-07-15 18:44:27 +00:00
bbbboom
714257b3c5
Update display-language.diff (#5317)
"vscode-remote-resource" not under "{{WORKBENCH_WEB_BASE_URL}}", It needs to access the upper level path.

Co-authored-by: Asher <ash@coder.com>
2022-07-15 18:00:05 +00:00
Asher
97af08b9e5
fix: file/directory opens from terminal (#5340) 2022-07-15 16:51:03 +00:00
Joe Previte
e189435a6a
feat: add message to brew publish (#5341) 2022-07-15 16:24:33 +00:00
Joe Previte
f79b38d25a
fix(workbench): use window.location without origin (#5332)
When using `window.location.origin` to create a new URL for loading
web packages, it constructs a URL that is not relative, leading to the
terminal breaking when code-server is served not via the root (i.e. /ide
instead of /).
2022-07-14 09:25:48 -07:00
Joe Previte
9ad0d9e6ad
release: 4.5.0 (#5308)
* chore(release): bump version to 4.5.0

* chore: update CHANGELOG

* chore: bump chart version

* docs: update MAINTAINING

* fix: add VSCODE_DEV=1 to e2e script

I'm not sure what changed in the latest version but without setting
VSCODE_DEV=1, code-server won't load. This fixes that.

* Revert "fix: add VSCODE_DEV=1 to e2e script"

This reverts commit 58c4826af82c12d3bc79340945204e6b7dc8cf04.

* fix: try setting VSCODE_DEV=1

* Revert "fix: try setting VSCODE_DEV=1"

This reverts commit 902f5f2f30d2e43a7c3b95decc85f82e98814145.

* refactor: remove version check e2e test

I am not sure why this is passing locally and failing CI. I need to
further investigate this since it fails depending on where you test.
2022-07-01 13:45:36 -07:00
renovate[bot]
55cfba8168
chore(deps): update aquasecurity/trivy-action digest to 0105373 (#5310)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-06-30 10:16:12 -07:00
renovate[bot]
4f0d5566c3
chore(deps): update minor dependency updates (#5301)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-06-29 16:25:52 +00:00
renovate[bot]
79e96a99d3
chore(deps): update codecov/codecov-action action to v3 (#5305)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-06-29 08:55:44 -07:00
renovate[bot]
c99f4cef25
chore(deps): update azure/setup-helm action to v3 (#5302)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-06-28 12:57:29 -07:00
Joe Previte
1296848afc
refactor: switch to codecov-uploader GitHub Action (#5303)
* refactor: switch to codecov-uploader GitHub Action

codecov deprecated their Node wrapper for uploading coverage reports.

This removes that and uses their new uploaded along with the v2 GitHub
Action they maintain.

* fix: update broken integration test
2022-06-28 10:04:35 -07:00
Joe Previte
c51ff3bce1
refactor: move integration tests to Jest (#5275)
* feat: add installExtension integration test

This adds a new helper function called `runCodeServerCommand` along with
a test for `--install-extension`. We can use this approach for writing
integration tests (i.e. testing a real code-server build, CLI commands,
etc).

* refactor: s/ test:standalone with test:integration

This replaces our integration approach to use Jest instead of a single
bash script. By doing this, we will be able to easily maintain and add
to our integration test suite.

* refactor: filter unit tests

Now that our integration tests also use Jest, we need to update our unit
test script to ignore `test/integration`.

* refactor: add SKIP_SUBMODULE_DEPS to postinstall

* refactor: add SKIP_SUBMODULE_DEPS to postinstall

* fixup!: skip submod deps

* refactor: move runCodeServerCommand into sep. file

When Jest runs a test, it loads all the files and imports for that test.
This means you might be "requiring" code that's unrelated to your tests.

This leads to unexpected errors depending on where the code runs.

Moved this file to avoid GLIBC and other errors relaed to argon2 when
running integration tests in CI.

* fizup: formatting

* fizup: increase timeout

* refactor: use fixture in installExtension test

Instead of relying on a network to install an extension, we use a
fixture - vsix file in the repo. This is also faster.

* feat: add integration test for listExtensions

* chore: ignore integration fixtures

* fixup: formatting

* fixup: remove custom-hacks.css

* fixup: formatting

* Update test/integration/installExtension.test.ts

Co-authored-by: Asher <ash@coder.com>

* Update test/integration/listExtensions.test.ts

Co-authored-by: Asher <ash@coder.com>

* Update test/integration/installExtension.test.ts

Co-authored-by: Asher <ash@coder.com>

* Update test/integration/listExtensions.test.ts

Co-authored-by: Asher <ash@coder.com>

* fixup: contributing integration tests section

* fixup: update ci/readme

* fixup: use RELEASE_PATH in test-integration.sh

* refactor: unzip vsix for listExtensions

* refactor: use exec instead of spawn

* Update docs/CONTRIBUTING.md

Co-authored-by: Asher <ash@coder.com>

* Update test/integration/listExtensions.test.ts

Co-authored-by: Asher <ash@coder.com>

* Update test/integration/listExtensions.test.ts

Co-authored-by: Asher <ash@coder.com>

* Update test/integration/listExtensions.test.ts

Co-authored-by: Asher <ash@coder.com>

* refactor: use different default binary path

* fixup!: formatting

Co-authored-by: Asher <ash@coder.com>
2022-06-24 16:33:38 +00:00
renovate[bot]
a879844c2d
chore(deps): update aquasecurity/trivy-action digest to 7b7aa26 (#5289)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-06-22 20:05:22 +00:00
renovate[bot]
f2693d366c
chore(deps): update minor dependency updates (#5276)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-06-22 16:26:20 +00:00
Asher
5ce99f8d1c
chore: update Code to 1.68 (#5263)
* chore: update Code to 1.67

Was able to remove our changes to common/webview.ts since they are
upstream now.

Other than that no serious changes, just context diffs.

* chore: update Code to 1.68

- Upstream moved the web socket endpoint so change the Express route
  from / to *.  That will let web sockets work at any endpoint.
- Everything in the workbench config is basically the same but
  de-indented (upstream extracted it into a separate object which
  resulted in a de-indent), the ordering is slightly different, and
  instead of vscodeBase we now need vscodeBase + this._staticRoute since
  everything is served from a sub-path now.
- Move manifest link back to the root since that is where we host our
  manifest.
- Change RemoteAuthoritiesImpl to use the same path building method as
  in other places (+ instead of using URI.parse/join).
- Use existing host/port in RemoteAuthoritiesImpl and
  BrowserSocketFactory instead of patching them to use window.location
  (these are set from window.location to begin with so it should be the
  same result but with less patching).
- Since BrowserSocketFactory includes a sub-path now (endpoints were
  changed upstream to serve from /quality/commit instead of from the
  root) the patch there has changed to prepend the base to that
  path (instead of using the base directly).
- The workbench HTML now natively supports a base URL in the form of
  WORKBENCH_WEB_BASE_URL so no need for VS_BASE patches there anymore.
- Upstream added type="image/x-icon" so I did as well.
- Move the language patch to the end of the series so it is easier to
  eventually remove.
- Remove the existing NLS config in favor of one that supports
  extensions.
- Upstream deleted webview main.js and inlined it into the HTML so move
  that code (the parent origin check) into both those HTML files
  (index.html and index-no-csp.html).
- The remaining diff is from changes to the surrounding context or a
  line was changed slightly by upstream (for example renamed files or
  new arguments like to the remote authority resolver).

* fix: modify product.json before building

Code injects this into the client during the build process so it needs
to be updated before we build.

* fix: update inline script nonces

* Update HTML base path test

* fix: missing commit

Code overrides it with nothing.

The date is also already injected.

* fix: web extensions breaking when the commit changes

By just using the marketplace directly instead of going through the
backend.  I am not sure what the point is when searching extensions
already goes directly to the marketplace anyway.

But also remove the prefix that breaks this as well because otherwise
existing installations will break.
2022-06-21 21:51:46 +00:00
Joe Previte
eb314ff727
chore: only download .deb in docker release (#5277)
* Update docker.yaml

* Update docker.yaml
2022-06-17 08:02:33 -07:00
Joe Previte
61138b4a61
refactor: open function (#5257)
* refactor: fix type annotations in open

There was no clear reason as to why we needed to use type assertions
when initializing both `args` and `options` in `open` so I refactored
them both.

* refactor: create constructOpenOptions

* refactor: add urlSearch and remove options

* feat: add tests for constructOpenOptions
2022-06-15 20:53:07 +00:00
renovate[bot]
113ad85b37
chore(deps): update minor dependency updates (#5244)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-06-15 13:29:52 -07:00
Ben Potter
a2bfcfcc78
chore: update Coder messaging on README (#5268)
* chore: update Coder messaging

* use our shortlink
2022-06-15 09:49:49 -05:00
Joe Previte
a96162d075
feat: add tests for node/util.open (#5256) 2022-06-13 21:16:46 +00:00
Joe Previte
744b301c7a
Update bug-report.yml (#5262) 2022-06-13 20:18:51 +00:00
Joe Previte
ba990668a5
chore: update bug report template (#5261)
* chore: update bug report template

Add an additional checkbox to the bug report template

* Update .github/ISSUE_TEMPLATE/bug-report.yml
2022-06-13 12:51:30 -07:00
Joe Previte
2c1cf0259e
feat: add tests for isWsl (#5251)
* refactor: add docs to isWsl and make easier to test

* feat: add tests for isWsl

* fixup!: refactor isWsl and tests

* Update test/unit/node/util.test.ts

Co-authored-by: Asher <ash@coder.com>

* Update test/unit/node/util.test.ts

Co-authored-by: Asher <ash@coder.com>

Co-authored-by: Asher <ash@coder.com>
2022-06-10 20:00:20 +00:00
Joe Previte
d75883bcc6
feat: add additional test for handlePasswordValidation (#5243) 2022-06-06 11:20:22 -07:00
renovate[bot]
792e954937
chore(deps): update aquasecurity/trivy-action digest to df3fb7d (#5239)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-06-06 08:51:15 -07:00
Asher
5d47282ea5
fix: install nfpm straight from GitHub (#5214)
* fix: install nfpm straight from GitHub

install.goreleaser.com appears to no longer be available.

* Add -f to curl commands

This might have made it so we got the right error rather than erroring
on the envsubst step.
2022-05-20 12:39:54 -07:00
Petar Petrov
d3f58f9b7d
Fix caddy installation docs (#5209)
Applies Caddy installations documentation fixes and also resolves the following issue when trying to install Caddy:

    W: GPG error: https://dl.cloudsmith.io/public/caddy/stable/deb/debian any-version InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ABA1F9B8875A6661

See:

 - 930109ec33
 - 2e255b1ee3
 - 0f4885e592
2022-05-19 22:36:06 +00:00
Feng Yu
1e304b1e7d
chore(deps): upgrade typescript to v4.6 (#5202) 2022-05-13 16:57:50 +00:00
djarbz
5276e41606
Allow user Entrypoint scripts (#5194)
* Allow user Entrypoint scripts

* Variable encapsulation

Co-authored-by: Asher <ash@coder.com>

* Check if Entrypoint Dir exists & run all executable

* Don't create entrypoint.d by default

* yarn fmt

* yarn fmt

* Fix for SC2044

* Revert "yarn fmt"

This reverts commit 5ca347f36155ec731587c1ed8437bca332c76693.

Co-authored-by: Asher <ash@coder.com>
2022-05-11 22:10:04 +00:00
Feng Yu
dedd770a78
docs: rename master to main in all github doc links (#5190)
* docs: correct link master -> main

* fix missing ]
2022-05-11 14:39:57 -07:00
Joe Previte
a02f47714e refactor: remove unused code enumToArray 2022-05-10 23:26:04 +00:00
Joe Previte
b13849ded0
refactor: remove dead code (#5188)
* refactor: delete unused code

* refactor: move onLine to test helpers

* Revert "refactor: move onLine to test helpers"

This reverts commit 32cc27b21361f88ac7d0457f9e2b3906f2f94fe1.

* fixup! refactor: delete unused code
2022-05-10 22:44:54 +00:00
Devin Buhl
7a8d487729
chore: push code-server image to GHCR (#5187) 2022-05-10 16:11:06 -05:00
renovate[bot]
1788537cce
chore(deps): update minor dependency updates (#5181)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-05-10 21:01:13 +00:00
renovate[bot]
0155a12500
chore(deps): update docker/setup-qemu-action action to v2 (#5166)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-05-10 20:35:25 +00:00
renovate[bot]
53b5d41271
chore(deps): update docker/setup-buildx-action action to v2 (#5164)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-05-10 13:13:45 -07:00
renovate[bot]
55006ccb5a
chore(deps): update docker/login-action action to v2 (#5163)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-05-10 12:37:05 -07:00
Joe Previte
cd78f32dc0
refactor(util): remove unused isObject function (#5183) 2022-05-10 00:24:25 +00:00
Joe Previte
3207bfd4ad
feat: add test for isFile when error (#5182)
This adds an additional test for the `isFile` utility function to ensure
it returns `false` in the event of an error.
2022-05-09 23:24:40 +00:00
Joe Previte
7c1a45a8d8
chore: update --help for disable-file-downloads (#5176)
* chore: update --help for disable-file-downloads

* fixup: formatting
2022-05-06 23:08:25 +00:00
Joe Previte
60dd8ab374
chore: configure git globally for brew publish (#5173) 2022-05-06 22:31:03 +00:00
Asher
6cf607eab9
fix: Docker push (#5175)
The action actually does not support wildcards but it does support * for
downloading all artifacts.
2022-05-06 16:57:22 -05:00
Joe Previte
f735c87ac7
release: 4.4.0 (#5169)
* chore(release): bump version to 4.4.0

* chore: update CHANGELOG with v4.4.0

* chore: bump version to 2.5.0 in Chart.yaml
2022-05-06 13:45:49 -07:00
Joe Previte
5a5798e45f
fix(update): add OrEqual to update.checked test (#5171)
* fix(update): add OrEqual to update.checked test

* fixup!: change all instances to OrEqual

* fixup!: add missing equals

* fixup!: consistency
2022-05-06 16:51:44 +00:00
Feng Yu
66a364358a
chore: upgrade developmemt node version to v16 (#5167)
Co-authored-by: yufeng.freeman <yufeng.freeman@bytedance.com>
2022-05-06 09:57:19 -05:00
Asher
ef0d76bc16
fix: patch telemetry (#5158)
This seems to have been dropped in the rewrite.
2022-05-04 18:32:12 -05:00
Joe Previte
88e971c609
refactor(heart): bind class methods and make beat async (#5142)
* feat: set up new test for beat twice

* refactor: make Heart.beat() async

This allows us to properly await heart.beat() in our tests and remove
the HACK I added before.

* refactor: bind heart methods .beat and .alive

This allows the functions to maintain access to the Heart instance (or
`this`) even when they are passed to other functions. We do this because
we pass both `isActive` and `beat` to `heartbeatTimer`.

* feat(heart): add test to ensure no warnings called

* fixup!: revert setTimeout for heartbeatTimer

* fixup!: return promise in beat
2022-05-04 16:05:48 -07:00
Joe Previte
7027ec7d60
chore: upgrade Code to 1.66 (#5135)
* chore: upgrade Code to 1.66

* docs: update docs for Code upgrades

* fixup!: docs

* chore: update vscode submodule

* chore: update integration patch

* chore: update node-version patch

* chore: update github-auth patch

They completely changed how auth is handled for GitHub in
https://github.com/microsoft/vscode/pull/145424 so our patch may not
work. Will need to test and revisit.

* refactor: remove postinstall patch

It appears they renamed postinstall.js to postinstall.mjs and removed
the use of `rimraf` which means our patch is no longer needed! 🎉

b0e8554cce

* chore: refresh local-storage patch

* chore: refresh service-worker patch

* chore: bulk refresh patches

* fixup!: docs formatting

* refactor: remove unused last-opened patch

* fixup!: formatting docs

* fixup!: formatting docs

* refactor: remove rsync postinstall

* Revert "refactor: remove rsync postinstall"

This reverts commit 8d6b613e9d779ba18d0297710614516cde108bcf.

* refactor: update postinstall.js to .mjs

* feat(patches): add parent-origin bypass

* docs(patches): add notes for testing store-socket

* docs(patches): update testing info for node-version

* refactor(patches): delete github-auth.diff patch

* docs(patches): add notes for testing connection-type

* fixup!: delete github-auth patch

* fixup!: update connection type testing

* docs(patches): add notes to insecure-notification.diff

* docs(patches): add nots for update-check.diff

* fixup!: remove comma in integration patch

* fix(e2e): disable workspace trust

* refactor: add --no-default-rc for yarn install

* feat(patches): remove yarnrc in presinstall

* fixup!: silly mistake

* docs: add note about KEEP_MODULES=1

* docs(patches): add testing notes for node-version

* refactor(patches): remove node-version

It appears this is no longer needed due to the `remote/package.json` now which
targets node rather than electron.

* fixup!: add cd ../.. to code upgrade instructions

* fixup!: add note to yarn --production flag

* fixup!: make parent-origin easier to upstream

* Revert "refactor(patches): delete github-auth.diff patch"

This reverts commit 31a354a34345309fadc475491b392d7601e51a32.

* Revert "fixup!: delete github-auth patch"

This reverts commit bdeb5212e8c7be6cadd109941b486a4bcdae69fa.

* Merge webview origin patch into webview patch

* Remove unused post-install patch

* Prevent builtin extensions from updating

* Refresh sourcemaps patch

* Update Node to v16

This matches the version in ./lib/vscode/remote/.yarnrc.

I changed the engine to exactly 16 since if you use any different
version it will just not work since the modules will have been built for
16 (due to the .yarnrc).

* Replace fs.rmdir with fs.rm

Node is showing a deprecation warning about it.

* Update github-auth patch

The local credentials provider is no longer used when there is a remote
so this code moved into the backend web credential provider.

* Prevent fs.rm from erroring about non-existent files

We were using fs.rmdir which presumably did not have the same behavior
in v14 (in v16 fs.rmdir also errors).

* Install Python 3 in CentOS CI container

Co-authored-by: Asher <ash@coder.com>
2022-05-04 21:58:49 +00:00
Asher
4e93db5b95
feat: relaunch on SIGUSR2 (#4979)
This is because Node uses SIGUSR1 to enable the debug listener so even
if you just want to restart code-server you end up enabling the debug
listener as well.

Opted to leave the SIGUSR1 handler in to avoid breaking existing
workflows even though it does mean even if you only want to enable the
debug listener you will end up restarting code-server as well.  We could
consider removing it after a transition phase.
2022-04-27 10:10:48 -05:00
renovate[bot]
fc75db6edc
chore(deps): update azure/setup-helm action to v2 (#5088)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-04-26 21:48:39 +00:00
Joe Previte
e3c8bd692c
feat(cli): support true for CS_DISABLE_FILE_DOWNLOADS (#5134)
After some feedback, we realized it is more intuitive to disable file
downloads by setting the environment variable
`CS_DISABLE_FILE_DOWNLOADS` to `true` than `1`. This commit adds support
for both.
2022-04-26 20:09:53 +00:00
mooff
a0b36147ea
fix: listening on IPv6 address not possible (#5133)
Wrap IPv6 addresses in square brackets when making URL in ensureAddress,
fixing regression (#1582)
2022-04-26 19:33:51 +00:00
Joe Previte
683412cb01
refactor: add timeout for race condition in heart test (#5131)
* refactor: add timeout for race condition in heart test

* fixup!: set mtime to 0 and check for update

* fixup!: use utimes directly instead of file open

* fixup!: remove import
2022-04-26 17:39:37 +00:00
Joe Previte
18ff99693b
feat: add tests for node/heart.ts (#5122)
* refactor(heart): extract logic into heartbeatTimer fn

To make it easier to test, I extract heartbeatTimer into it's own
function.

* feat(testing): add tests for heart.ts

* fixup

* fixup!: remove unneeded heart call

* Update src/node/heart.ts

Co-authored-by: Asher <ash@coder.com>

* fixup!: use mockResolvedValue everywhere

* fixup!: add stat test for timestamp check

Co-authored-by: Asher <ash@coder.com>
2022-04-26 16:35:40 +00:00
renovate[bot]
ed7bd2e65b
chore(deps): update github/codeql-action action to v2 (#5129)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-04-25 15:39:32 -07:00
Asher
c35bf1311e
chore: provide details when update.checked tests fail (#5115)
Using the toBe* functions will let us know what the actual values are
rather than just telling us true does not equal false.
2022-04-19 15:46:23 -05:00
renovate[bot]
7780a13cce
chore(deps): update aquasecurity/trivy-action digest to 2b30463 (#5098)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-04-19 11:37:47 -07:00
Joe Previte
dea6a40ea8
chore: attempt to fix docker (#5106)
* chore: attempt to fix docker

* Update .github/workflows/docker.yaml

Co-authored-by: Asher <ash@coder.com>

* chore: add publish:docker to scripts

Co-authored-by: Asher <ash@coder.com>
2022-04-15 00:02:03 +00:00
Joe Previte
09fc64a4f0
v4.3.0 (#5099)
* chore(release): bump version to 4.3.0

* fix(release-prep.sh): ignore lib/vscode

* docs(CHANGELOG): add 4.3.0

* chore: bump chart version

* fixup!: remove change in postinstall

* fixup!: bullets in CHANGELOG

* fixup!: formatting

* fixup! typo in changelog

* fixup!: update date in changelog

Co-authored-by: Asher <ash@coder.com>
2022-04-14 15:37:25 -07:00
Asher
fd42b95164
fix: use current location for web extension resource endpoint (#5104)
This makes it work behind a rewriting proxy as well as make it use the
correct remote authority.
2022-04-14 21:00:10 +00:00
Asher
b62a68ac37
fix: webviews failing to load the iframe HTML (#5103)
Code added in 1.65.0 broke webviews when you are hosting them from the
same domain.
2022-04-14 18:02:52 +00:00
Joe Previte
e7e6c163ed
revert(docs): partially revert 326a1d1862872955cec062030df2bd103799a1eb (#5095)
We tried to switch from `yarn` to `npm` because `yarn` ignores lockfiles
but learned that we missed a few key things.

For now, we are reverting docs and a few other changes that suggested
using `npm` instead of `yarn` until we fully remove `yarn` from the
codebase.
t Please enter the commit message for your changes. Lines starting
2022-04-13 17:15:21 +00:00
Joe Previte
0e1f396645
feat: add option for disabling file downloads (#5055)
* feat(cli): add disable-file-downloads to cli

* feat(e2e): add download test

* feat(e2e): add downloads disabled test

* refactor(e2e): explain how to debug unexpected close

* feat(patches): add disable file downloads

* wip: update diff

* Update src/node/cli.ts

Co-authored-by: Asher <ash@coder.com>

* fixup! add missing common/contextkeys file to patch

* fixup!: update patch

* fixup!: default disable-file-downloads undefined

* fixup!: combine e2e tests

* fixup!: use different test names

* feat: add CS_DISABLE_FILE_DOWNLOADS

* fixup!: make explicit and cleanup test

* fixup!: use beforeEach

Co-authored-by: Asher <ash@coder.com>
2022-04-13 09:39:05 -07:00
renovate[bot]
c05b727c61
chore(deps): update minor dependency updates (#5060)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-04-12 16:39:58 -07:00
Joseph Reiter
3bf470f19c
docs: simplify termux installation process (#5078)
* Update termux.md

1) Updated information to use PRoot (simpler than Andronix and the way supported by Termux) to create and access the Debian distro.
2) Added helpful information on using PRoot with your dev environment.
3) Cleaned up spelling, grammar, and made documentation more consistent between sections.

* docs: Termux correct packages to install

Updated some erroneously missing packages (vim and sudo) necessary for multi-user setup.

* docs: cleaned up verbiage

Co-authored-by: Joe Previte <jjprevite@gmail.com>

* docs: corrected punctuation

Co-authored-by: Joe Previte <jjprevite@gmail.com>

* docs: correct punctuation

Co-authored-by: Joe Previte <jjprevite@gmail.com>

* docs: clarify pkg command shorthand

* Ran yarn fmt on docs

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-04-12 15:42:22 -07:00
neilnaveen
f4569f0b48
Set permissions for GitHub actions (#5090)
- Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

 Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

Signed-off-by: neilnaveen <42328488+neilnaveen@users.noreply.github.com>

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-04-12 18:59:11 +00:00
Riley Calhoun
fd2a031c21
Update ios.md (#5079) 2022-04-12 11:32:49 -07:00
Asher
3ba3caa8a6
docs: link upstream sync section in MAINTAINING to CONTRIBUTING (#5075)
* Link upstream sync section in MAINTAINING to CONTRIBUTING

* Update MAINTAINING.md table of contents

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-04-07 13:15:30 -07:00
Joe Previte
f0bfd3b450
chore: remove file ext. from LICENSE (#5070)
* chore: remove file ext. from LICENSE

* fixup!: update LICENSE in missing places

* Revert "fixup!: update LICENSE in missing places"

This reverts commit baa47b68e63e6c885865b30397e984c5a8c34117.

* fixup!: update LICENSE in build-release
2022-04-07 10:36:33 -07:00
David Wahler
38e57a355b
Exclude .deb files from release Docker image (#5068) 2022-04-06 15:45:06 -07:00
Asher
5bc26e90cb
fix: version in about dialog (#5057)
* Fix code-server version not appearing in other languages

It needs to be separate from the localize call since the language
version of that string is used and it will not include a spot for the
code-server version.

I also moved the "v" so we do not get "vUnknown".

* Add code-server version to product configuration

Before 1.64 the entire product configuration was sent to the client but
that was removed so we have to add anything we want to use on the
client, like the code-server version (used in the about dialog).

Fixes #5027.

* Refresh patches

* Change version test to look for specific version

This will catch if we are not sending the actual version to the client.
2022-03-31 16:14:03 -05:00
Joe Previte
d796cc20e0
chore(Code): upgrade to 1.65 (#5047)
* docs(CONTRIBUTING): update Code workflow

* chore: update vscode to release/1.65

* chore(quilt): ignore patch backup files

* chore: refresh/update patches for 1.65
2022-03-30 18:33:58 -05:00
Joe Previte
0fceb128f7
fix(npm): write npm package name to file (#5049) 2022-03-30 18:11:11 -05:00
renovate[bot]
d5d7c519e8
chore(deps): update dependency minimist to v2.2.1 (#5013)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-03-30 15:41:26 -07:00
Joe Previte
7f884203f0
chore(ci): disable docs-preview on forks (#5046) 2022-03-30 13:45:35 -07:00
Joe Previte
cd6d740dc3
chore(rennovate): ignore updates for express (#5044) 2022-03-30 13:25:37 -07:00
cjtim
9c4f41d784
docs(helm): add example env required for docker-in-docker (#5045)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-03-30 11:19:58 -07:00
Joe Previte
5341294d2d
fix(workflows): docs-preview and npm job (#5042)
* fix(ci): add GITHUB_TOKEN to docs-preview workflow

* feat(ci): comment npm dev build instructions on PR
2022-03-30 10:47:46 -07:00
Asher
06e36b42bb
fix: add missing package.json and source maps (#5040)
* Use --exclude to skip node_modules

Instead of copying and then deleting them.  This will also catch some
node_modules directories that were missed.

* Remove per-extension dependency install

Code packages all the dependencies using webpack for each extension so
there are no dependencies to install.

* Include source maps

I also moved this to its own patch because it feels sufficiently
standalone.

Fixes #5026.

* Refresh language patch

The base is slightly different so it needed to be refreshed.

* Add missing package.json

This was caused by switching to Code's package step which does not
include the package.json.

Fixes #5019.

* Include keytar

It seems this actually is used now.
2022-03-30 10:35:22 -05:00
Joe Previte
be0fe10a6a
docs(README): point docs to website (#5041)
* docs(README): point docs to website

* Update docs/README.md
2022-03-30 08:26:59 -07:00
Joe Previte
8316a27da4
refactor(brew-bump): fix homebrew bump script (#5025)
* fix: source lib.sh in docker-buildx-push for tagging version

* chore: use ubuntu and update git config homebrew job

* refactor: simplify brew-bump.sh script

* Revert "fix: source lib.sh in docker-buildx-push for tagging version"

This reverts commit 2f7a3610cb1efa6bca7794d8b265001ea347cccb.
2022-03-29 16:58:34 -07:00
Asher
18e19d29e6
fix: minor build fixes (#5039)
* Regenerate last opened patch

The lines were a bit off.

* Remove packaged .gitignore files

Fixes #4964.

* Remove extra Node binary

This gets overidden in the standalone but it was getting uselessly
included in the npm package.
2022-03-29 13:13:56 -05:00
Edouard Vincent
326a1d1862
feat: Add a shrinkwrap file to the NPM release (#5010) 2022-03-29 12:33:56 -05:00
Joe Previte
e1c1ba8b36
fix: source lib.sh in docker-buildx-push for tagging version (#5024) 2022-03-24 09:33:39 -07:00
Joe Previte
ba1ddbd181
fix: use -r with jq and add workflow for artifacts (#5016) 2022-03-22 16:45:59 -07:00
Joe Previte
cf7cff0f72
release: 4.2.0 (#5014)
* chore(release): bump version to 4.2.0

* chore: update CHANGELOG

* chore: bump helm chart version
2022-03-22 16:34:29 -07:00
Asher
a1af9e2a56
chore: move to patches (#4997)
* Move integration types into code-server

This will be easier to maintain than to have it as a patch.

* Disable connection token

Using a flag means we will not need to patch it out.  I think this is
new from 1.64?

* Add product.json to build process

This way we do not have to patch it.

* Ship with remote agent package.json

Instead of the root one.  This contains fewer dependencies.

* Let Code handle errors

This way we will not have to patch Code to make this work and I think it
makes sense to let Code handle the request.

If we do want to handle errors we can do it cleanly by patching their
error handler to throw instead.

* Move manifest override into code-server

This way we will not have to patch it.

* Move to patches

- Switch submodule to track upstream
- Add quilt to the process
- Add patches

The node-* ignore was ignoring one of the diffs so I removed it.  This
was added when we were curling Node as node-v{version}-darwin-x64 for
the macOS build but this no longer happens (we use the Node action to
install a specific version now so we just use the system-wide Node).

* Use pre-packaged Code
2022-03-22 15:07:14 -05:00
Joe Previte
be727871f6
refactor: checkout homebrew-core in action instead of script (#4996)
* refactor: checkout homebrew-core in action instead of script

This moves the git clone step from the `brew-bump.sh` script into the
`npm-brew.yaml` as part of the job using actions/checkout instead.

* refactor: clean up brew-bump.sh script

* fixup

* fixup!: remove step to clean up homebrew repo

* fixup!: use correct ./ci path steps-lib.sh

* fixup!: add exit code 0 for duplicate PRs
2022-03-21 16:57:36 -07:00
Joe Previte
60ebf2f851
chore: update to minimist-list (#5006) 2022-03-21 16:18:32 -07:00
renovate[bot]
815c4cf1f0
chore(deps): update actions/cache action to v3 (#5003)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-03-21 14:31:02 -07:00
Joe Previte
5afb26fb60
fix(ci): correctly download npm/docker artifacts (#4995)
* fix(ci): correctly download npm artifact

* fixup! fix(ci): correctly download npm artifact

* docs: update MAINTAINING

* fixup! docs: update MAINTAINING

* fixup! Merge branch 'main' into 4949-chore-fix-npm-workflow

* chore: get ci to run

* refactor: use vVERSION branch name instead of release

* refactor: use new download artifact in docker workflow

* refactor: clean up release-github-assets script

* fixup: remove extra v

* fixup! fixup: remove extra v
2022-03-17 11:52:39 -07:00
Joe Previte
a0561c7685
feat(ci): publish dev builds to @coder/code-server-pr (#4972)
* feat(npm): use DEV_PACKAGE_NAME for development

* feat(ci): use npm v7 in npm job

* fixup: add npm version

* fixup: always set package name

* wip

* fix: check for npm and npm v7

* fixup

* fixup: move after release dir created

* fixup: use jq

* fixup: use jq correctly
2022-03-15 16:59:40 -07:00
renovate[bot]
d22f312cab
chore(deps): update dependency normalize-package-data to v4 (#4991)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-03-15 09:27:04 -07:00
Asher
21c74802e8
chore: move Code to a submodule (#4990)
* Move Code to a submodule

Closes #4901.

* Base Code cache on hash and re-enable node_modules cache

The current setup appears to only rebuild VS Code if the dependencies
change but we need to rebuild it if anything changes.

I also re-enabled the commented out node_modules caches.  They look like
they should work to me with the submodule method.  I think the problem
occurred because Code itself was being installed in the yarn step.
2022-03-14 21:37:29 -05:00
renovate[bot]
184ef68147
chore(deps): update dependency audit-ci to v6 (#4986)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-03-14 14:48:12 -07:00
Joe Previte
86c8590bd5
feat(testing): add test for app > listen (#4971)
* feat(testing): add test for app > listen

* Update test/unit/node/app.test.ts

* refactor: modernize listen fn in app

* wip

* fix: update error message

* fixup: remove console.log

* fixup: use clearAllMocks once in beforeAll

* fix: move chmod after socket listen

* fixup: formatting

* Update src/node/app.ts

Co-authored-by: Jonathan Yu <jonathan@coder.com>

* Update src/node/app.ts

Co-authored-by: Asher <ash@coder.com>

Co-authored-by: Jonathan Yu <jonathan@coder.com>
Co-authored-by: Asher <ash@coder.com>
2022-03-11 16:54:59 -07:00
Joe Previte
91cabbc246
feat(testing): add test for optionDescriptions (#4970)
* feat(testing): add test for optionDescriptions

* refactor(cli): optional arg in optionDescriptions

* feat: add more tests for optionDescriptions
2022-03-11 13:27:19 -07:00
azriel-stephen
77296c7187
Update guide.md (#4981)
Grammatical mistake
2022-03-11 09:49:12 -07:00
Bruno Quaresma
52eaea9f7a
docs: update docs preview (#4968)
* docs: update docs preview

* Fix Ubuntu  deps

* Fix formatting
2022-03-10 13:44:27 -07:00
Joe Previte
03e0bdac03
chore: update vscode to 1.64 (#4902)
* chore: update vscode server files

* chore: update code to 1.64

* refactor: clean up code in constants.ts

* chore: keep package.json vscode cache

* fixup!: formatting

* feat(ci): add VSCODE_CACHE_VERSION

* fix(ci): add package.json for e2e tests

* fix: TS errors

* refactor: remove isConnected e2e tests
2022-03-09 14:28:52 -07:00
Joe Previte
3b93a86f25
chore: add permissions trivy-docker (#4957)
* chore: add permissions trivy-docker

* Update .github/workflows/trivy-docker.yaml
2022-03-08 13:19:57 -07:00
Joe Previte
643ef1392f
testing: add new test for logLevels (#4953)
* feat: add new test for logLevels

* wip

* feat: add test for valid log level env var
2022-03-07 16:08:07 -07:00
Joe Previte
3c6f85c282
fix: re-enable trivvy docker scan (#4943)
* fix: re-enable trivvy docker scan

* wip

* fixup

* fixup

* fixup
2022-03-04 15:59:29 -07:00
renovate[bot]
f0faa22ee9
chore(deps): update actions/upload-artifact action to v3 (#4944)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-03-04 09:25:12 -07:00
Asher
7aa087ae34
release: v4.1.0 (#4946)
* release: bump version to 4.1.0

* Rename VS Code to Code in changelog

* Catch up changelog

* Add release as valid semantic tag
2022-03-03 14:46:17 -06:00
Asher
b61a8addcf
feat: migrate state to new database name (#4938)
* Merge setup and navigate functions

Whenever we navigate we probably want to make sure the editor is ready
so might as well just have one function.

* Add customizable entry and workspace directory

* Add test for state db migration

* Update Code

This contains the state migrations.
2022-03-03 12:32:43 -06:00
Ciel
c4d87580ef
feat: cli arg for file permission of socket (#4923) 2022-03-03 09:54:35 -07:00
Joe Previte
78658f1cf4
refactor: remove folder/workspace from vsCodeCliArgs (#4932)
* refactor: remove folder/workspace from vsCodeCliArgs

Since we handle this in the vscode.ts route, we no longer need to pass it to VS
Code as a CLI arg since it's deprecated on that side.

* feat(vscode): redirect to folder from cli

* Update src/node/routes/vscode.ts

Co-authored-by: Asher <ash@coder.com>

* fixup!: update _: type

* fixup!: move vars to lower if block

* fixup!: share redirect block

* fixup!: mmove req.query.ew block into if

* fixup!: refactor vscode tests

* refactor: make vscode.ts logic easier to read

* fixup!: fix broken tests and clean up logic

* chore: upgrade vscode version

* fixup!: delete unnecessary if closed block

* Update src/node/routes/vscode.ts

Co-authored-by: Asher <ash@coder.com>

* fixup!: rename to FOLDER_OR_WORKSPACE_WAS_CLOSED

Co-authored-by: Asher <ash@coder.com>
2022-03-02 15:36:38 -07:00
renovate[bot]
b0181120d4
chore(deps): update actions/download-artifact action to v3 (#4937)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-03-02 14:31:21 -07:00
Asher
0e78a147b6
feat: github-auth flag (#4926)
* feat: github-auth flag

This will allow injecting credentials into code-server if you already
have them.

* Update Code

Contains the GitHub auth changes.

* Add e2e test for GitHub token
2022-03-02 14:02:51 -06:00
renovate[bot]
3f3a489f33
chore(deps): update actions/checkout action to v3 (#4931)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Jonathan Yu <jonathan@coder.com>
2022-03-01 16:31:32 -07:00
Jonathan Yu
83269ba658
chore: limit concurrency for build jobs (#4929)
* Configure build jobs to cancel previous builds when new changes
  are pushed to a pull request branch, and serialize builds when
  running in a branch from a push event
* Reduce privileges of GitHub token for scripts workflow
2022-03-01 15:03:39 -08:00
Jonathan Yu
2c785779b5
feat: add version of Code OSS to output (#4925)
Show the bundled version of Code OSS in the text-based output
for --version and --help, in addition to the JSON output
(--version --json)

Closes: #4874
2022-03-01 12:20:43 -08:00
Joe Previte
506d3f43ed
feat(http): keep slashes in queryParams in redirects (#4928)
* refactor(http): extract logic into constructRedirectPath

This allows us to easily test our redirect path construction logic where we get
the relative path, the query string and construct a redirect path.

By extracting this from `redirect`, we can easily test this logic in a unit
test.

I did this so we could test some logic where slashes in query strings should be
made human-friendly for users.

* feat(testing): add tests for constructRedirectPath

Co-authored-by: Asher <ash@coder.com>
2022-03-01 12:11:56 -07:00
Edouard Vincent
1465d8d510
fix: Pin express to 5.0.0-alpha.8 (#4918)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-03-01 11:24:06 -07:00
Edouard Vincent
b3cf4c32ff
style: cookie doman => cookie domain (#4919)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-03-01 08:43:41 -07:00
Jonathan Yu
44d74c170f
feat: add version string functions to constants (#4920)
Introduce helper functions for getting human- and machine-readable
version strings from the constants package, and cover it in unit
tests.

This is a first step to resolving #4874.
2022-02-28 13:55:47 -08:00
renovate[bot]
a989e0c387
chore(deps): update aquasecurity/trivy-action commit hash to 2962126 (#4907)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-02-25 13:53:58 -07:00
renovate[bot]
769aceacc3
chore(deps): update actions/setup-node action to v3 (#4908)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-02-25 09:09:09 -07:00
Joe Previte
793e4d35ec
feat(testing): add new test for cli.ts (#4898)
* feat(testing): add new test for cli.ts

* fixup!: update parse test
2022-02-24 11:07:42 -07:00
Asher
f9402a6318
fix: state collision (#4881)
* Add helper for navigating the quick picker

This has problems similar to the menu except instead of closing it gets
re-created which interrupts the hover call and causes the test to fail.
Now it will keep trying just like the menu.

* Add a test for opening a file

* Add test for colliding state

* Update VS Code

This contains the colliding state fix.
2022-02-22 12:43:13 -06:00
Joe Previte
23734d356a
fix: skip docs/npm workflows on forks (#4875)
Co-authored-by: Asher <ash@coder.com>
2022-02-22 10:13:20 -07:00
Tim
d7c1894fb4
Update requirements.md (#4882)
Grammar/typo correction.

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-02-18 11:06:58 -07:00
Joe Previte
01a0e95174
docs: update sync vscode instructions (#4879)
* docs: update sync vscode instructions

* fixup!

* fixup: formatting
2022-02-17 15:18:17 -07:00
Joe Previte
94f378c196
feat(testing): add test for parse when error in args + config (#4866)
* chore: fmt cleanup

* feat(parse): add test error w/config
2022-02-15 16:19:22 -07:00
Joe Previte
e3e9f052c4
fix: wrap socket in proxy before passing to vscode (#4840)
* chore: add ipc hook to e2e script

* refactor: allow codeServerArgs in e2e tests

* feat: add --cert e2e extension test

* fix: wrap websocket in proxy

* fixup: remvoe ignoreHTTPSErrors

* fixup: make codeServerArgs readonly

* fixup! add back ignoreHTTPSErrors
2022-02-15 14:51:42 -07:00
Joe Previte
b26cce589f
chore: update vscode commit (#4857)
* chore: update vscode commit

This includes two fixes from coder/vscode:
- https://github.com/coder/vscode/pull/43
- https://github.com/coder/vscode/pull/42

* fix: use double-bracket in ext. e2e test
2022-02-15 14:15:53 -07:00
Joe Previte
8fc4832722
chore: update follow-redirects resolution (#4868)
* chore: update follow-redirects resolution

* chore: update vm2 resolution
2022-02-15 13:40:53 -07:00
Ben Potter
36eae3b9f2
fix: Slack community link (#4864)
resolves #4843

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-02-14 18:23:20 -06:00
Thomas John Wesolowski
3ad618db97
feat: Add support for imagePullSecrets to Helm chart (#4838)
* add support for imagePullSecrets

* Add doc and example value for imagePullSecrets

* simplify syntax for imagePullSecrets

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-02-14 15:34:07 -07:00
Joe Previte
c9c5c54cda
feat: add tests for update.ts (#4835)
* feat: add isAddressInfo helper function

* feat(update): add test for rejection UpdateProvider

* feat: add more tests for UpdateProvider

* fixup! move isAddressInfo, add .address check

* fixup! remove extra writeHead

* fixup! use -1 in redirect logic

* fixup! remove unnecessary String call

* fixup! use /latest for redirect

* fixup! use match group for regex

* fixup!: replace match/split logic
2022-02-14 13:53:28 -07:00
Lorenz Brun
102478bdea
fix: ensure dumb-init is PID 1 (#4846)
Exec to dumb-init in entrypoint script, so that it can
handle signals and reap subprocesses.
2022-02-11 11:44:01 -08:00
Jonathan Yu
03c62242ee
chore: allow overwriting Docker images (#4850)
Allow Docker images to be overwritten, which is required to update
dependencies in the base image when the upstream vendor resolves
security issues.
2022-02-11 09:32:02 -08:00
Jonathan Yu
8135d2ecc3
chore: update Docker image publish workflow (#4847)
* Use official action to log in to Docker Hub
* Run using pinned ubuntu-20.04 environment
2022-02-10 17:40:41 -08:00
Winston R. Milling
177f0ed163
feat: support ingressClassName in Helm Chart (#4844)
Allow configuring the ingress class via a value.
2022-02-10 15:16:35 -08:00
Joe Previte
25b1340771
revert: @node-rs/argon2 -> node-argon2 (#4829)
* revert: partial revert of 723469ab5bed3ba9fbb3e8d5ecbfcd9a3bee2d88

This reverts part of the changes introduced in refactor: migrate from argon2 ->
@node-rs/argon2 (#4733)

Switching to @node-rs/argon2 introduced bugs that we couldn't solve due to
limitations in npm.

see here
https://github.com/coder/code-server/issues/4804#issuecomment-1030338395
2022-02-04 15:52:42 -07:00
Joe Previte
00224fa73a
feat: add test for hash when error (#4814) 2022-02-03 14:22:16 -07:00
Joe Previte
fd643dcbc3
refactor(ci): fix npm workflows (#4797)
* feat: refactor npm workflows to use download-artifact

This refactors the npm workflows to use the download-artifact GitHub Action. We
had problems in the past with our download_artifact custom bash function. This
also fixes an issue where we weren't downloading the correct artifacts when
publishing beta and dev tags to npm.

* fixup: remove unused env var

* fixup! add download-artifcat to npm-brew"

* fixup! remove unnecessary code comment

* fixup! move NPM_ENVIRONMENT logic to script
2022-02-03 13:54:36 -07:00
renovate[bot]
79412eb137
chore(deps): update aquasecurity/trivy-action commit hash to a7a829a (#4821)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-02-03 12:43:31 -07:00
LG
10f57bac65
docs: Update some more links (#4806)
* Update links in package.json

I will try checking the docs too

* docs: Update links in triage.md

* docs: Update links in npm.md

* docs: Update links in whatever files that have `cdr`

* Replace globally, thanks @bpmct!

* fix: coderer instead of coder
I should've used all three toggles in the Search/Replace tab in the GItHub.dev editor.

* Code Formatting
2022-02-01 09:45:19 -07:00
Asher
439f27c568
release: v4.0.2 (#4801)
* Disable BROWSER env var

Right now the browser helper script does not actually work.  It seems
safer to skip this until we can fix it.

* Bump to 4.0.2

* Update changelog for 4.0.2
2022-01-27 19:00:06 -06:00
Asher
c20b0b390b
fix: make browser helper executable (#4792)
Surprisingly it does not come already executable like the dev-bin
scripts.
2022-01-25 17:18:45 -06:00
Joe Previte
14d0feff0d
chore(deps): update node-fetch and nanoid (#4787) 2022-01-25 10:52:17 -07:00
Joe Previte
9954a88d3a
refactor(ci): clean up npm workflows (#4786)
This extracst the publish on npm workflow from ci.yaml and adds a new workflow
called `npm-beta.yaml`.

Now we have three workflows that publish to npm.
- `npm-beta.yaml` only runs on pushes and merges into `main`
- `npm-dev.yaml` only runs on PRs into `main` with approval from
  code-server-reviewers team
- `npm-brew.yaml` only runs on releases

This should fix problems we had previously where anyone could open a PR and
publish under the code-server namespace. It also separates out the workflows
based on environment and when they should run.
2022-01-24 15:33:42 -07:00
Joe Previte
48bbbd6c37
chore: update bug-report.yaml (#4780)
* chore: update bug-report.yml

Fix `OS/Web Information` section and don't render as Markdown

* chore: add repro steps to bug template
2022-01-24 14:58:26 -07:00
Joe Previte
8816ab93fe
fix: update npm-dev.yaml (#4781) 2022-01-22 08:48:57 -07:00
Joe Previte
a2f530161f
feat: publish beta and development tags on npm (#4769)
* feat: add logic to publish beta/dev npm

This adds new log to publish the npm package both while working on PRs and when
PRs are merged into main, allowing us to easily test changes in a
production-like setting.

Co-authored-by: Asher <ash@coder.com>
2022-01-21 16:28:56 -07:00
Asher
63f99da087
fix: package bin/helper directory in the right spot (#4776)
VS Code moves this as part of their packaging task.  We will probably
want to look into using theirs instead of replicating it.

Fixes https://github.com/coder/code-server/issues/4721
2022-01-21 10:54:48 -06:00
LG
6e04501ec5
docs: Fix links (#4770)
* docs: Change `cdr` to `coder`, read desc please

Yeah, includes links.

* docs: Update README (links and the extra comma)

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-01-20 11:38:19 -07:00
Joe Previte
51818dc419
chore: update issue templates (#4768)
* chore: delete release issue template

* chore: use bug-report form template

* chore: clean up config.yml for templates

* chore: clean up doc issue template

* chore: clean up feature request template
2022-01-20 09:39:31 -07:00
n1ghtBl00d
48cd3c8b11
Fix Typos in guide.md (#4674)
The Guide mentioned "HTTP/HTTP traffic" when it should say "HTTP/HTTPS traffic"

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2022-01-18 16:44:02 -07:00
Joe Previte
723469ab5b
refactor: migrate from argon2 -> @node-rs/argon2 (#4733)
* chore(deps): replace argon2 w/@node-rs/argon2

* refactor: clean up hashPassword functions

* refactor(util): pass in process.platform

* fix: use correct settings for test-extension

Before, it was running into errors with an @types package.

Now, we're correctly running `tsc` so it picks up our `tsconfig.json` and we're
telling TypeScript to not typecheck our lib and exclude `node_modules`
2022-01-18 16:13:39 -07:00
renovate[bot]
2752d95ff6
chore(deps): update minor dependency updates (#4722)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-14 21:48:52 +00:00
Joe Previte
b621911e61
chore: use 1.14.7 follow-redirects (#4742) 2022-01-13 11:07:19 -07:00
Joe Previte
48ddad8351
fix: reverse logic in brew-bump env fns (#4732) 2022-01-12 15:51:11 -07:00
Dmitriy Fishman
15500bb388
docs: fix a typo in guide.md (#4728) 2022-01-12 13:00:58 -07:00
Jonathan Yu
ad81a30db5
chore: add configuration for Semantic Pull Requests app (#4652)
* chore: add configuration for Semantic Pull Requests app

* update lists

* remove tests scope
2022-01-10 15:11:59 -07:00
Joe Previte
70c91c857a
feat: add tests for node/settings.ts (#4717) 2022-01-10 20:44:28 +00:00
Dmitriy Fishman
33c50972bc
docs: fix a typo in MAINTAINING.md (#4711) 2022-01-10 11:38:43 -07:00
Asher
ca15d4b7a0
docs: add marketplace change to changelog (#4692) 2022-01-06 13:20:11 -06:00
Joe Previte
484429b5da
release: 4.0.1 (#4678)
* chore(release): bump version to 4.0.1

* fix: ignore pre-commit hook for release-prep script

* chore: bump helm-chart to 2.0.0

* chore: update CHANGELOG for 4.0.1
2022-01-05 13:06:32 -07:00
Asher
3d999986b2
feat: proxy URI environment variable (#4681)
* Add test extension

This will let us test extension-related features (like the proxy URI).

I removed the environment variables in the script because they override
the ones you set yourself. We still set defaults in constants.ts.

* Add changelog entry for VSCODE_PROXY_URI

* Add terminal test for VSCODE_PROXY_URI

* Update VS Code

This adds the VSCODE_PROXY_URI environment variable.
2022-01-04 15:02:25 -06:00
Asher
f04fcf2d64
chore: update vscode (#4680)
* Update VS Code

Fixes https://github.com/coder/code-server/issues/4598
Fixes https://github.com/coder/code-server/issues/4620
Fixes https://github.com/coder/code-server/issues/4600

* Add locale flag back

This is valid again now that we have restored display language support.
2022-01-04 12:37:11 -06:00
Joe Previte
7695de2831
fix(ci): add environment to docs-preview (#4677) 2022-01-04 11:05:04 -07:00
Asher
003480881b
fix: infinite proxy loop (#4676)
I think the problem is that when a proxy is not in use proxy-agent
returns the global agent...which is itself since we set it globally,
causing the loop.

VS Code already covers proxies meaning we only need to do it in our own
requests so to fix this pass in the agent in the version fetch request
instead of overidding globally.

Also avoid proxy-from-env and pass in the proxy URI instead as both
http_proxy and https_proxy can be used for either http or https requests
but it does not allow that.
2022-01-03 18:19:21 -06:00
Simon Elsbrock
47f0b6f4fa
docs(ipad): fix link to ios-ipad related issues (#4651)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-12-28 12:45:28 -07:00
renovate[bot]
047a4f01f2
chore(deps): update aquasecurity/trivy-action commit hash to 8f4c716 (#4650)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-27 10:38:13 -07:00
Joe Previte
95d965a27b
fix: add codeServerVersion to vscode/product.json (#4632)
* fix: add codeServerVersion to vscode/product/json

* chore: update vscode

* chore: update modulePathIgnorePattern jest
2021-12-17 12:58:46 -07:00
Asher
c4c480a068
Implement last opened functionality (#4633)
* Implement last opened functionality

Fixes https://github.com/cdr/code-server/issues/4619

* Fix test temp dirs not being cleaned up

* Mock logger everywhere

This suppresses all the error and debug output we generate which makes
it hard to actually find which test has failed.  It also gives us a
standard way to test logging for the few places we do that.

* Use separate data directories for unit test instances

Exactly as we do for the e2e tests.

* Add integration tests for vscode route

* Make settings use --user-data-dir

Without this test instances step on each other feet and they also
clobber your own non-test settings.

* Make redirects consistent

They will preserve the trailing slash if there is one.

* Remove compilation check

If you do a regular non-watch build there are no compilation stats so
this bricks VS Code in CI when running the unit tests.

I am not sure how best to fix this for the case where you have a build
that has not been packaged yet so I just removed it for now and added a
message to check if VS Code is compiling when in dev mode.

* Update code-server update endpoint name
2021-12-17 13:06:52 -06:00
Jonathan Yu
b990dabed1
chore: use readonly deploy key for preview (#4645) 2021-12-17 10:27:22 -07:00
Joe Previte
4943e9418d
docs: fix install.sh link (#4627)
Co-authored-by: Asher <ash@coder.com>
2021-12-16 16:59:07 -07:00
Asher
f10ef42f04
Add codeowner group for new name (#4641) 2021-12-16 16:43:05 -06:00
Asher
c27dbd0463
Revert .editorconfig (#4640)
I have been wondering why my editor is not defaulting to two spaces and
it is because indent_size was removed from the * block.

I am not sure why we would need a separate block for package.json and
yaml anyway since they use the same settings as the rest of our code.

I would revert the commit but this change was made in a larger commit
with a bunch of unrelated changes.
2021-12-16 15:30:07 -06:00
Kyle Carberry
ec3d9974b3
fix: Update install.sh to use "coder" GitHub organization (#4638)
* fix: Update install.sh to use "coder" GitHub organization

* Update docs preview
2021-12-16 10:49:16 -06:00
Asher
73e0b79d7f
Update VS Code (#4631)
Fixes https://github.com/cdr/code-server/issues/3410
Fixes https://github.com/cdr/code-server/issues/4604
Fixes https://github.com/cdr/code-server/issues/4607
Fixes https://github.com/cdr/code-server/issues/4608
Fixes https://github.com/cdr/code-server/issues/4609

Also has the foundation for
https://github.com/cdr/code-server/issues/4619.
2021-12-15 15:26:59 -07:00
Joe Previte
3059d72a5d
docs: add section for Android (#4621)
* Add Instructions To Install 100% In Android (#4536)

* Add Instructions To Install 100% In Android

Thx

* Update android.md

Co-authored-by: Joe Previte <jjprevite@gmail.com>

* docs: clean up android.md

* docs: add android to manifest

* Add missing backtick

Co-authored-by: The AliX Legend <alixgamer175@gmail.com>
Co-authored-by: Asher <ash@coder.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-12-15 20:37:16 +00:00
Joe Previte
6e9e411542
fix: add --clobber to release-github-assets script (#4628)
Co-authored-by: Asher <ash@coder.com>
2021-12-15 20:11:35 +00:00
renovate[bot]
7561fc4306
chore(deps): update aquasecurity/trivy-action commit hash to 81cc8cd (#4601)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-12-15 10:38:18 -07:00
Len
259363bcdb
Support browsers from before 2020 (#4579)
* Support browsers from before 2020

As reported in #2825, #2826 and #3051, almost everything works in older browsers. This setting here prevented me from updating and I think it is an obvious enhancement to not restrict to browsers from 2020+. There should not be any measurable downsides of this change since es6 and es2020 are pretty similar with only minor differences.

* Include lib (polyfills) for <es2020 targets

* Assume all modern dom features despite es6 syntax

* Add modern dom iterators to es6 environment

Co-authored-by: Joe Previte <jjprevite@gmail.com>
Co-authored-by: Asher <ash@coder.com>
2021-12-15 10:07:42 -07:00
Joe Previte
1b796d19bf
docs: add section for iOS (#4622)
* Added instructions to install it on iOSi (#4614)

* Added instructions to install it on iOS

* Update ios.md

Co-authored-by: Joe Previte <jjprevite@gmail.com>

* docs: add ios to manifest

* docs: clean up ios docs

Co-authored-by: The AliX Legend <alixgamer175@gmail.com>
2021-12-14 23:43:52 +00:00
hyk
5960a6728c
support git-lfs default (#4611)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-12-14 16:08:25 -07:00
Leask Wong
18e66c4299
adding option --edge to install latest edge / preview version (#4605)
* adding option --edge to install latest edge / preview version

* updated arg --edge parsing to match the style of --dryrun
2021-12-14 15:30:35 -07:00
Joe Previte
c77999bcd3
release: 4.0.0 (#4597)
* chore(release): bump version to 4.0.0

* Bump test plugin code-server engine

Co-authored-by: Asher <ash@coder.com>
2021-12-10 13:30:53 -07:00
Asher
9e583fa562
Add separate function for VS Code arguments (#4599)
The problem before was that the pop() caused the open in existing
instance functionality to break because the arguments no longer
contained the file.

We could simply remove the pop() but since `workspace` and `folder` are
not CLI arguments I think it makes sense to handle them in a separate
function which can be called at the point where they are needed.  This
also lets us de-duplicate some logic since we create these arguments in
two spots and lets us skip this logic when we do not need it.

The pop() is still avoided because manipulating a passed-in object
in-place seems like a risky move.  If we really need to do this we
should copy the positional argument array instead.
2021-12-10 12:01:35 -06:00
Joe Previte
3b91cffae5
chore: update CHANGELOG (#4595) 2021-12-09 14:21:02 -07:00
Asher
4b4ec37880
Fix relative paths (#4594)
* Add tests for relativeRoot

* Remove path.posix.join

Since this is for file system paths it feels incorrect to use it on
URL paths as they are different in many ways.

* Rewrite cookie path logic

Before we relied on the client to resolve the base given to it by the
backend against the path.

Instead have the client pass that information along so we can resolve it
on the backend.  This means the client has to do less work.

* Do not remove out directory before watch

This is re-used for incremental compilation.

Also remove del since that was the only use (and we can use fs.rmdir in
the future if we need something like this).

* Remove unused function resolveBase
2021-12-08 15:52:15 -06:00
Asher
9d9f3a41ab
Fix spawning code-server within code-server (#4590)
* Remove extra VS Code CLI spawn

We already spawn VS Code's CLI when necessary in the lines below.
Having the CLI spawn unconditionally when in a VS Code environment makes
it impossible to run code-server within code-server (for example to
develop it).

* Update VS Code

This sanitizes our environment variables so code-server does not always
think it is a child spawn.

Fixes https://github.com/cdr/code-server/issues/4519.
2021-12-07 18:20:57 -06:00
Asher
c3eb9b800e
Remove excessive reloading before VS Code is ready (#4589)
The watch script was reloading the web server after every extension
compilation which is not necessary plus VS Code will not even be ready
at that point anyway.

Instead restart when the main compilation is finished.  The string to
match with includes a "with" because otherwise it would match "Finished
compilation extensions" which is not the main compilation task where we
actually need to restart the web server.

I also replaced this.log with console.log because the former does not
include a newline and it appears we want newlines with all
these (otherwise the next log starts on the same line which looks odd).

I removed the cache clean as well because the cache is meant to stay
there to speed up builds.
2021-12-07 17:38:03 -06:00
JounQin
6c9c84090e
chore: replace eslint-import-resolver-alias with eslint-import-resolver-typescript (#4546)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-12-07 14:39:01 -07:00
Joe Previte
d15731a570
docs: update sections around VS Code fork (#4571)
* docs(CONTRIBUTING): update workflow based on vscode changes

* docs(MAINTAINING): add section for syncing VS Code upstream

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-12-06 17:58:04 +00:00
renovate[bot]
80f30fc42c
fix(deps): update dependency qs to v6.10.2 (#4581)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-06 10:33:13 -07:00
Teffen
62b3a6fd9f
Proxy path fixes (#4548)
* Fix issue where HTTP error status codes are not read.

* Fix issues surrounding sessions when accessed from a proxy.

- Updated vscode args to match latest upstream.
- Fixed issues surrounding trailing slashes affecting base paths.
- Updated cookie names to better match upstream's usage, debuggability.

* Bump vendor.

* Update tests.

* Fix issue where tests lack cookie key.

Co-authored-by: Asher <ash@coder.com>
2021-12-01 18:21:52 -06:00
Ben Potter
6a2740f57e
chore: add deprecation notice for --link (#4562)
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-11-29 12:03:33 -08:00
renovate[bot]
3d4660491a
chore(deps): update minor dependency updates (#4531)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 11:31:35 -07:00
Joe Previte
65d7420ee7
feat: add test for onLine throw error (#4542) 2021-11-22 20:18:58 +00:00
Joe Previte
0bc96989c2
chore(deps): upgrade json-schema version to 0.4.0 (#4543) 2021-11-22 19:36:04 +00:00
Teffen
bd09533f40
Fix issue where 404 errors are mistaken for server errors. (#4534)
* Fix issue where 404 errors are mistaken for server errors.

* Bump vendor.
2021-11-19 18:14:13 -05:00
Joe Previte
db35c47315
chore(codecov): add slack webhook integration (#4532)
Co-authored-by: Teffen <TeffenEllis@users.noreply.github.com>
2021-11-19 22:10:27 +00:00
Teffen
3157a40044
Fix issues surrounding initial web server load. (#4509)
- Clean up watcher behaviors.
2021-11-19 16:03:40 -05:00
renovate[bot]
5fe16be62d
chore(deps): update aquasecurity/trivy-action commit hash to 2a2157e (#4493)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-11-19 12:04:08 -05:00
Asher
dd29a823c3
Fix /vscode route being shadowed by / (#4522)
This causes / to always take precedence and on the VS Code side we would
see /vscode instead of / so the matching does not work correctly.
2021-11-17 10:20:01 -06:00
Asher
cd26f84bc6
Fix watcher not restarting code-server on VS Code compilation (#4520)
The "Starting watch-client" string no longer appears in the latest build
output.  We could look for "Finished compilation with" to avoid
restarting when other tasks restart (since they also include the name
i.e. "Finished compilation extensions with 0 errors") but I figure we
might as well restart code-server when any compilation task completes in
case other tasks include changes that need to be reloaded.
2021-11-16 16:21:14 -06:00
Jinu
ccb9d948c0
fix NOTE.txt (#4515) 2021-11-16 09:46:39 -07:00
Joe Previte
0a072f7532
feat(testing): refactor humanPath and add tests (#4511)
* feat: add test for humanPath

* refactor: make humanPath pure and pass in homedir
2021-11-15 19:40:34 +00:00
Joe Previte
16a5f2e171
docs: update CONTRIBUTING with new flow (#4502) 2021-11-15 11:37:16 -07:00
Teffen
e705948ef3
Spawn vscode on demand (#4499)
* Refactor vscode router to load async.

* Bump vscode.

* fix volumes (#4497)

* Fix : recreate the termux guide to adapt the recent changes (#4472)

* Fix : recreate the termux guide to adapt the recent changes

Termux nodejs-lts changed from v14 to v16 and there are many issues people are facing such as with argon2. Hence I recommend changing it to this install process which is comparably better and has one less issue :^)

I've also added some extra things such as installing GO and Python, idk about the TOC tree but this is pretty much it.

* yarn-fmt and minor typos

https://github.com/cdr/code-server/pull/4472#issuecomment-964752180

* Fix : replace unnecessary steps to be linked to a guide

* Change from private gist to a section in Extra

* Remove reference to non-existent step

* ready to merge!

Co-authored-by: Joe Previte <jjprevite@gmail.com>

Co-authored-by: Jinu <jlandowner8@gmail.com>
Co-authored-by: Han Seung Min - 한승민 <hanseungmin.ar@gmail.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-11-14 20:03:20 -05:00
Han Seung Min - 한승민
6606040835
Fix : recreate the termux guide to adapt the recent changes (#4472)
* Fix : recreate the termux guide to adapt the recent changes

Termux nodejs-lts changed from v14 to v16 and there are many issues people are facing such as with argon2. Hence I recommend changing it to this install process which is comparably better and has one less issue :^)

I've also added some extra things such as installing GO and Python, idk about the TOC tree but this is pretty much it.

* yarn-fmt and minor typos

https://github.com/cdr/code-server/pull/4472#issuecomment-964752180

* Fix : replace unnecessary steps to be linked to a guide

* Change from private gist to a section in Extra

* Remove reference to non-existent step

* ready to merge!

Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-11-12 14:25:48 -07:00
Jinu
cdf0deb534
fix volumes (#4497) 2021-11-12 10:10:47 -07:00
Asher
d052cc246d
Update changelog (#4492)
I added the missing versions and some changelog entries for the latest
version.  I also added some extra details to the entries that should
help users understand what changed and what they need to do about
it.  The overall format is based on keepachangelog.com.

In that same spirit I removed entries that do not affect
users (documentation and development changes).

I removed the names because it seems unlikely users will be interested,
that information can be found in the PR, and code is really the work of
multiple developers (even if only one is writing code and the other is
reviewing) which is not something that is reflected in this document.
2021-11-10 16:45:19 -06:00
Teffen
e4a797dc9e
Open VSX switch, Part II (#4319)
* docs: update FAQ with extension gallery info (#2672)

* Update app to reflect Open VSX switch.

- Remove extension related github configs.
- Update tests to reflect new upstream behavior.

Co-authored-by: Akash Satheesan <akash@coder.com>
2021-11-10 10:00:59 -05:00
Teffen
1b60ef418c
Use upstream server (#4414)
* Flesh out fixes to align with upstream.

* Update route handlers to better reflect fallback behavior.

* Add platform to vscode-reh-web task

Our strategy has been to build once and then recompile native modules
for individual platforms.  It looks like VS Code builds from scratch for
each platform.

But we can target any platform, grab the pre-packaged folder, then
continue with own packaging.

In the future we may want to rework to match upstream.

* Fix issue where workspace args are not parsed.

* Fix issues surrounding opening files within code-server's terminal.

* Readd parent wrapper for hot reload.

* Allow more errors.

* Fix issues surrounding Coder link.

* Add dir creation and fix cli

It seems VS Code explodes when certain directories do not exist so
import the reh agent instead of the server component since it creates
the directories (require patching thus the VS Code update).

Also the CLI (for installing extensions) did not seem to be working so
point that to the same place since it also exports a function for
running that part of the CLI.

* Remove hardcoded VSCODE_DEV=1

This causes VS Code to use the development HTML file.  Move this to the
watch command instead.

I deleted the other stuff before it as well since in the latest main.js
they do not have this code so I figure we should be safe to omit it.

* Fix mismatching commit between client and server

* Mostly restore command-line parity

Restore most everything and remove the added server arguments.  This
will let us add and remove options after later so we can contain the
number of breaking changes.

To accomplish this a hard separation is added between the CLI arguments
and the server arguments.

The separation between user-provided arguments and arguments with
defaults is also made more clear.

The extra directory flags have been left out as they were buggy and
should be implemented upstream although I think there are better
solutions anyway.  locale and install-source are unsupported with the
web remote and are left removed.  It is unclear whether they were used
before anyway.

Some restored flags still need to have their behavior re-implemented.

* Fix static endpoint not emitting 404s

This fixes the last failing unit test.

Fix a missing dependency, add some generic reverse proxy support for the
protocol, and add back a missing nfpm fix.

* Import missing logError

* Fix 403 errors

* Add code-server version to about dialog

* Use user settings to disable welcome page

The workspace setting seems to be recognized but if so it is having no
effect.

* Update VS Code cache step with new build directories

Co-authored-by: Asher <ash@coder.com>
2021-11-09 23:28:31 -06:00
Mauricio Garavaglia
31d5823d10
Escape HTML from messages in error page (#4430)
Co-authored-by: Asher <ash@coder.com>
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-11-09 14:39:54 -07:00
LG
605c3c6367
Add a gist of the difference between code-server and Coder (#4419)
* Add a gist of the difference

* Update the gist

* Update README.md

As told by @tmikaeld here: https://github.com/cdr/code-server/discussions/3102#discussioncomment-1565789

* Update docs/README.md

Co-authored-by: Joe Previte <jjprevite@gmail.com>

* `yarn fmt` results

Co-authored-by: Joe Previte <jjprevite@gmail.com>
Co-authored-by: Asher <ash@coder.com>
2021-11-09 10:30:27 -07:00
Matthew Beckett
94b2774f8c
Drop duplicate Helm values from values.yaml (#4450)
* Drop duplicate Helm values from values.yaml

* Use frozen lockfile for test dependencies in CI (#4442)

* Use frozen lockfile for test dependencies in CI

This might be causing more Playwright issues.

* Bump Playwright

Mostly just to trigger a reinstall of dependencies since it is cached
and still failing.

Once updated it errors saying install needs to run so add that too.

* Drop duplicate Helm values from values.yaml

Co-authored-by: Asher <ash@coder.com>
2021-11-05 12:04:52 -07:00
renovate[bot]
4399c7df64
fix(deps): update dependency rotating-file-stream to v3 (#4451)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-05 12:04:10 -07:00
Asher
03651e5e0b
Use frozen lockfile for test dependencies in CI (#4442)
* Use frozen lockfile for test dependencies in CI

This might be causing more Playwright issues.

* Bump Playwright

Mostly just to trigger a reinstall of dependencies since it is cached
and still failing.

Once updated it errors saying install needs to run so add that too.
2021-11-04 11:39:27 -05:00
Joe Previte
219cad1783
Revert "Add linkup command to improve link functionality" (#4439)
This reverts commit 2504f6fce475ee353c1b494c1506ece4e395babc.
2021-11-03 14:42:14 -07:00
Asher
dcc9cf3dd2
Avoid npx for Playwright dependencies (#4437)
It was causing version mismatch errors.

It might make more sense to have this in the postinstall but for now I
have foregone that as it would be installed in every step including
those that do not run e2e tests.
2021-11-03 16:17:43 -05:00
Joe Previte
13404df267
chore(deps): fix issues identified by audit-ci (#4438)
* fix(deps): ansi-regex issue

* fix(deps): upgrade tar to safe version

* chore(deps): fix vm2 issue

* fix(ci): increase timeout for audit-ci to 15
2021-11-03 14:09:31 -07:00
Joe Previte
13e91dedc1
chore(deps): fix security vulnerabilities (#4428) 2021-11-03 10:32:08 -07:00
renovate[bot]
0cbf1ca58c
chore(deps): update dependency audit-ci to v5 (#4326)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-01 15:15:34 -07:00
Joe Previte
9c861570cd
docs(contrib): update linux requirements (#4328) 2021-11-01 15:15:22 -07:00
Joe Previte
743bab09cd
refactor(ci): only run release workflows on released event (#4288) 2021-11-01 10:06:10 -07:00
renovate[bot]
976891a2e2
chore(deps): update typescript-eslint monorepo to v5 (#4338)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-29 16:34:24 -07:00
Joe Previte
946e4e8843
feat(cli): add test for readSocketPath (#4284)
* fix: update isNodeJSErrnoException

* refactor(cli): export and purify readSocketPath

* feat: add tests for readSocketPath

* fix(ci): temporarily disable install deps from cache
2021-10-29 16:03:57 -07:00
Asher
49c9c191b9
Fix script test workflow triggers (#4412) 2021-10-29 14:48:21 -05:00
renovate[bot]
433a3d91dd
fix(deps): update dependency split2 to v4 (#4357)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-29 12:32:49 -07:00
renovate[bot]
0100d4c72a
chore(deps): update aquasecurity/trivy-action commit hash to 1ccef26 (#4401)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-29 02:12:26 +00:00
Jonathan Yu
aa9755b8fb
Remove unused Lock config (#4304) 2021-10-28 16:21:48 -07:00
Asher
4abc525801
Update cross-build image apt before installing (#4411) 2021-10-28 15:36:21 -07:00
Joe Previte
705e821741
fix(testing): revert change & fix playwright tests (#4310)
* fix(testing): revert change & fix playwright tests

* fix(constants): add type to import statement

* refactor(e2e): delete browser test

This test was originally added to ensure playwright was working.

At this point, we know it works so removing this test because it doesn't help
with anything specific to code-server and only adds unnecessary code to the
codebase plus increases the e2e test job duration.

* chore(e2e): use 1 worker for e2e test

I don't know if it's a resources issue, playwright, or code-server but it seems
like the e2e tests choke when multiple workers are used.

This change is okay because our CI runner only has 2 cores so it would only use
1 worker anyway, but by specifying it in our playwright config, we ensure more
stability in our e2e tests working correctly.

See these PRs:
- https://github.com/cdr/code-server/pull/3263
- https://github.com/cdr/code-server/pull/4310

* revert(vscode): add missing route with redirect

* chore(vscode): update to latest fork

* Touch up compilation step.

* Bump vendor.

* Fix VS Code minification step

* Move ClientConfiguration to common

Common code must not import Node code as it is imported by the browser.

* Ensure lib directory exists before curling

cURL errors now because VS Code was moved and the directory does not
exist.

* Update incorrect e2e test help output

Revert workers change as well; this can be overridden when desired.

* Add back extension compilation step

* Include missing resources in release

This includes a favicon, for example.  I opted to include the entire
directory to make sure we do not miss anything.  Some of the other
stuff looks potentially useful (like completions).

* Set quality property in product configuration

When httpWebWorkerExtensionHostIframe.html is fetched it uses the web
endpoint template (in which we do not include the commit) but if the
quality is not set it prepends the commit to the web endpoint instead.
The new static endpoint does not use/handle commits so this 404s.

Long-term we might want to make the new static endpoint use commits like
the old one but we will also need to update the various other static
URLs to include the commit.

For now I just fixed this by adding the quality since:
  1. Probably faster than trying to find and update all static uses.
  2. VS Code probably expects it anyway.
  3. Gives us better control over the endpoint.

* Update VS Code

This fixes several build issues.

* Bump vscode.

* Bump.

* Bump.

* Use CLI directly.

* Update tests to reflect new upstream behavior.

* Move unit tests to after the build

Our code has new dependencies on VS Code that are pulled in when the
unit tests run.  Because of this we need to build VS Code before running
the unit tests (as it only pulls built code).

* Upgrade proxy-agent dependencies

This resolves a security report with one of its dependencies (vm2).

* Symlink VS Code output directory before unit tests

This is necessary now that we import from the out directory.

* Fix issues surrounding persistent processes between tests.

* Update VS Code cache directories

These were renamed so the cached paths need to be updated.  I changed
the key as well to force a rebuild.

* Move test symlink to script

This way it works for local testing as well.

I had to use out-build instead of out-vscode-server-min because Jest
throws some obscure error about a handlebars haste map.

* Fix listening on a socket

* Update VS Code

It contains fixes for missing files in the build.

* Standardize disposals

* Dispose HTTP server

Shares code with the test HTTP server.  For now it is a function but
maybe we should make it a class that is extended by tests.

* Dispose app on exit

* Fix logging link errors

Unfortunately the logger currently chokes when provided with error
objects.

Also for some reason the bracketed text was not displaying...

* Update regex used by e2e to extract address

The address was recently changed to use URL which seems to add a
trailing slash when using toString, causing the regex match to fail.

* Log browser console in e2e tests

* Add base back to login page

This is used to set cookies when using a base path.

* Remove login page test

The file this was testing no longer exists.

* Use path.posix for static base

Since this is a web path and not platform-dependent.

* Add test for invalid password

Co-authored-by: Teffen Ellis <teffen@nirri.us>
Co-authored-by: Asher <ash@coder.com>
2021-10-28 15:27:17 -05:00
Mr. Blogger
0e97a94acf
Replace nodejs with nodejs-lts in Termux docs (#4336)
nodejs installs v16 which is not compatible.  nodejs-lts currently uses v14.
2021-10-25 11:14:37 -05:00
Asher
3520ad2286
Mention that Safari needs TLS 1.2 (#4346)
* Mention that Safari needs TLS 1.2

https://github.com/cdr/code-server/issues/3850

* Delete duplicated guide sections
2021-10-18 10:31:30 -05:00
McChen
ad17c7dc8e
docs: fix nfpm link in contributing (#4369)
Co-authored-by: chenjiahao <chenjiahao@jd.com>
2021-10-18 10:25:42 -05:00
Joe Previte
271bc06754
Merge pull request #4309 from cdr/jsjoeio-test-monday
feat(cli): add tests for password, hashed-password
2021-10-05 11:14:07 -07:00
Ben Potter
dfc505b977
Merge pull request #4307 from cdr/bpmct/comparison
update comparisons in FAQ
2021-10-05 12:24:58 -05:00
Ben Potter
ee1de79af6
fix weird format 2021-10-05 11:40:57 -05:00
Ben Potter
fa6f47965a
Update docs/FAQ.md
Co-authored-by: Ashley McClelland <ashley@coder.com>
2021-10-05 11:31:40 -05:00
Ben Potter
1af83a3c56
Update docs/FAQ.md
Co-authored-by: Ashley McClelland <ashley@coder.com>
2021-10-05 11:31:34 -05:00
Ben Potter
8745f1aa63
Update docs/FAQ.md
Co-authored-by: Ashley McClelland <ashley@coder.com>
2021-10-05 11:31:29 -05:00
Ben Potter
bb1799ba04
Update docs/FAQ.md
Co-authored-by: Ashley McClelland <ashley@coder.com>
2021-10-05 11:31:24 -05:00
Ben Potter
70fbfc7ada
Update docs/FAQ.md
Co-authored-by: Ashley McClelland <ashley@coder.com>
2021-10-05 11:31:17 -05:00
Tian Jian
59f667ec14
Fix: use pipe to spawn child process to re-enable file logging (#4293)
We pipe the child's stdout and stderr to the log file (and to the parent's streams) but since we used `inherit` for `stdio` this caused the child to use the parent's streams directly which made `child.stdout` and `child.stderr` non-existent and thus we had no file logging.

Using `pipe` creates stdin and stderr on the child.
2021-10-05 10:55:40 -05:00
Ben Potter
816152ddbd
fix typo 2021-10-04 17:41:36 -05:00
Joe Previte
45319ec648
woo! 2021-10-04 15:04:07 -07:00
Joe Previte
e588f8b0b0
feat(cli): add tests for password, hashed-password 2021-10-04 14:51:14 -07:00
Ben Potter
7c26a82a17
format 2021-10-04 14:57:58 -05:00
Ben Potter
75e44fdc84
update comparisons in FAQ 2021-10-04 14:48:31 -05:00
Joe Previte
8a4ed5a2e0
Merge pull request #4306 from cdr/jsjoeio-fix-broken-tests
fix: revert CI change + fix broken tests
2021-10-04 12:20:31 -07:00
Joe Previte
a8d873f9f8
refactor(ci): fix unit tests job 2021-10-04 12:07:45 -07:00
Joe Previte
7183b5a43e
chore(testing): fix casing in error messsage 2021-10-04 12:06:33 -07:00
Joe Previte
8136769b66
fix: close vscodeServer on server close if defined 2021-10-04 12:06:12 -07:00
Teffen Ellis
672038c6af Fix issue where marketplace is undefined.
- Fix error logging from child process.
2021-10-04 13:26:16 -04:00
Joe Previte
2d7aeb5bf9
Merge pull request #4290 from cdr/jsjoeio-vscode
chore(vscode): update to latest commit of fork
2021-10-01 14:57:02 -07:00
Joe Previte
f342c327f3
chore(vscode): update to latest commit of fork 2021-10-01 14:47:20 -07:00
Joe Previte
4619786019
Merge pull request #4274 from cdr/jsjoeio-testing-guidelines
docs: update section around testing
2021-10-01 11:15:15 -07:00
Joe Previte
1dfcd0448e
Merge pull request #4273 from cdr/jsjoeio-bump-helm-chart
chore(helm-chart): bump to 1.0.5
2021-10-01 11:10:21 -07:00
Joe Previte
48ce49eec8
Merge pull request #4281 from toddewilliams/patch-1
Update collaboration.md
2021-09-30 16:43:48 -07:00
Teffen Ellis
d8c344beda Refactor vscode endpoints to use fork directly. 2021-09-30 19:14:17 -04:00
Teffen Ellis
beebf53adc Add linkup command to improve link functionality 2021-09-30 19:14:17 -04:00
Joe Previte
a14fa862da
fixup! Update collaboration.md 2021-09-30 15:23:16 -07:00
Todd Williams
fc0d127470
Update collaboration.md
I updated the CodeTogether description to include some enhancements that we just shipped in CodeTogether 4.2. I also added a bit more detail to the feature list and provided some hyperlinks in a couple of places where people would likely appreciate more detail. 

I made no changes to the other sections.
2021-09-30 11:51:42 -05:00
Joe Previte
6eda7ae81f
Merge pull request #4243 from cdr/renovate/ws-8.x
chore(deps): update dependency @types/ws to v8
2021-09-29 15:17:58 -07:00
Joe Previte
3f75aa2db1
Merge pull request #4254 from cdr/ipad-copy-paste
iPad docs: add copy & paste known issue
2021-09-29 15:11:20 -07:00
Renovate Bot
328b864534
chore(deps): update dependency @types/ws to v8 2021-09-29 22:06:02 +00:00
Ben Potter
876d0275b3
iPad docs: add copy & paste known issue 2021-09-29 15:04:51 -07:00
Joe Previte
b9989ca2db
docs(MAINTAINING): add Testing section 2021-09-29 15:02:11 -07:00
Joe Previte
4e310b4985
docs(CONTRIBUTING): add scrip tests section 2021-09-29 15:02:11 -07:00
Joe Previte
d54b4accac
fix 2021-09-29 14:39:48 -07:00
Joe Previte
5e7b419820
chore: bump helm-chart version to 1.0.5
We've had two patches to the helm-chart since the last time we bumped the Chart
version.

- 1ffca5751c
- 5a36627aae

This version bump ensures that chart version has the correct date.
2021-09-29 14:38:13 -07:00
Joe Previte
1b80244af7
Merge pull request #4265 from cdr/jsjoeio-add-tests
feat(cli): add test for defaultConfigFile
2021-09-28 16:19:32 -07:00
Joe Previte
999960eef5
Merge pull request #4236 from cdr/jsjoeio/fix-brew-bump
fix(brew-bump.sh): add checks and handle errors
2021-09-28 16:13:24 -07:00
Joe Previte
6c95f72d2b
refactor: make password param to defaultConfigFile 2021-09-28 16:13:13 -07:00
Joe Previte
8ef950af4c
feat(brew-bump): add check for cleanup step 2021-09-28 16:07:01 -07:00
Joe Previte
e5f03e0b06
fix: add checks and handle errors brew-bump.sh
feat(script): add steps-lib, is_env_var_set & test

feat(brew-bump): add check for VERSION

feat(brew-bump): check HOMEBREW_GITHUB_API_TOKEN

feat(steps-lib): add directory_exists helper fn

fix(brew-bump): check that git clone worked

feat(brew-bump): add check for remote upstream

fix: remove upstream command thing

feat(steps-lib): add file_exists helper function

feat(brew-bump): add check for git-askpass.sh

feat(steps-lib): add is_executable function & test

feat(brew-bump): add check for is_executable

refactor: use GIT_ASKPASS as variable
2021-09-28 16:06:57 -07:00
Joe Previte
77c1150b8d
feat(cli): add test for defaultConfigFile 2021-09-28 15:45:44 -07:00
Joe Previte
fb2625dbe8
chore(cli): export defaultConfigFile + add JSDoc 2021-09-28 15:38:59 -07:00
Joe Previte
82d93186f8
feat(cli): add test for defaultConfigFile 2021-09-28 14:41:38 -07:00
Jonathan Yu
8f72481712
chore: upgrade preview Node.js from 12 to 14 (#4255) 2021-09-28 09:21:39 -07:00
Joe Previte
edb3b41800
Merge pull request #4253 from cdr/jsjoeio-codeowners
fix: update CODEOWNERS for helm-chart
2021-09-27 16:32:33 -07:00
Joe Previte
97a292235f
fix: update CODEOWNERS for helm-chart 2021-09-27 16:26:27 -07:00
Ben Potter
4c6e43d8d6
Merge pull request #4244 from jlandowner/main
Use Ingress v1 from Kubernetes v1.19 in helm chart
2021-09-27 13:24:58 -07:00
Joe Previte
8bae81dd83
Merge pull request #4251 from cdr/jsjoeio-fix-trivy
chore(deps): upgrade ansi-regex to 5.0.1 and tmpl to 1.0.5
2021-09-27 12:31:56 -07:00
Joe Previte
be90b5de35
chore(deps): upgarde tmpl to 1.0.5 2021-09-27 12:20:04 -07:00
Joe Previte
1f819fa534
chore(deps): upgrade ansi-regex to 5.0.1 2021-09-27 12:15:18 -07:00
jlandowner
5a36627aae Use Ingress v1 from k8s v1.19 2021-09-25 23:07:06 +09:00
Abdullah Bin Jahed
c11d51ed7a Update package.json 2021-09-24 17:49:58 -04:00
Joe Previte
900c34c613
Merge pull request #4234 from cdr/jsjoeio/update-npm-maintainence
docs(MAINTAINING): update release section + add team section
2021-09-23 22:52:34 +00:00
Joe Previte
c91033c611
docs(maintaining): fix #4174 2021-09-23 15:45:29 -07:00
Joe Previte
2c6a47d42b
docs(maintaining): add note for each release platform 2021-09-23 15:45:28 -07:00
Joe Previte
05d66c1358
docs(maintaining): add onboarding and offboarding 2021-09-23 15:45:28 -07:00
Joe Previte
bf10341e3f
docs(maintaining): refactor and add Team section 2021-09-23 15:45:27 -07:00
Joe Previte
83eade6897
docs: remove oxy from current maintainers 2021-09-23 15:45:27 -07:00
Joe Previte
f3ef414fd2
Merge pull request #4231 from cdr/jsjoeio/revert-4116
Revert "fix: run postinstall script explicitly with bash (#4116)"
2021-09-23 19:33:46 +00:00
Joe Previte
014faf5b1c
feat: use sh in postinstall in build-release.sh 2021-09-23 11:41:51 -07:00
Joe Previte
1f95a23d1d
Revert "fix: run postinstall script explicitly with bash (#4116)"
This reverts commit b32b4edf3d1167f87cb3f4aaf1acd3d5378cefb3.

We are reverting this because we found out that while this fixes the postinstall
on Windows, it breaks it on mac and other devices.  See:
https://github.com/cdr/code-server/issues/3874#issuecomment-925397980
2021-09-23 10:44:37 -07:00
Joe Previte
ed0926819d
Merge pull request #4228 from cdr/bpmct/ipad-fixup
update iPad docs to reflect info in Sep 2021
2021-09-23 17:13:39 +00:00
Ben Potter
ee04915d12
add newline (whoops) 2021-09-23 14:45:09 +00:00
Ben Potter
e58b072f24
add focus bug 2021-09-23 14:42:30 +00:00
Ben Potter
b27e1d8dd4
doctoc/format 2021-09-23 14:31:12 +00:00
Ben Potter
8156fc040a
mention terminal text 2021-09-23 14:21:37 +00:00
Ben Potter
80f3884e0f
update trackpad scripping 2021-09-23 14:19:51 +00:00
Ben Potter
4229e95a7d
remove closed issue 2021-09-23 14:17:58 +00:00
Ben Potter
e0a1220126
move self-signed cert guide to bottom 2021-09-23 14:17:25 +00:00
Joe Previte
e8063c7efd
Merge pull request #4211 from cdr/jsjoeio-add-moar-tests
feat: add tests for shouldRunVsCodeCli and bindAddrFromArgs
2021-09-21 18:55:25 +00:00
Joe Previte
1440b263f4
Merge pull request #4218 from cdr/jsjoeio-update-runners
fix(ci): upgrade runner to ubuntu-18.04
2021-09-21 18:51:06 +00:00
Joe Previte
f84757507b
feat: add tests for bindAddrFromArgs 2021-09-21 11:48:20 -07:00
Joe Previte
76f4054242
fix(ci): upgrade runner to ubuntu-18.04 2021-09-21 11:20:03 -07:00
Joe Previte
a673cf2833
refactor: shouldRunVsCodeCli 2021-09-20 15:14:46 -07:00
Joe Previte
30ade712bf
feat: add tests for shouldRunVsCodeCli 2021-09-20 14:53:09 -07:00
Joe Previte
92d0d28dd7
Merge pull request #4160 from cdr/jsjoeio-add-tests-node
feat: add tests for src/node/app.ts
2021-09-20 18:04:50 +00:00
Joe Previte
a3cea88f51
feat: add tests for src/node/app.ts 2021-09-20 10:57:31 -07:00
Joe Previte
4f3c8a556e
Merge pull request #4194 from cdr/jsjoeio-add-sh-test
feat: add test for get_nfpm_arch()
2021-09-17 23:14:29 +00:00
Joe Previte
6a692487c8
feat: add test for get_nfpm_arch 2021-09-17 16:07:03 -07:00
Joe Previte
0609a1b2bd
Merge pull request #4170 from cdr/jsjoeio-fix-trivy-vul
fix(security): update set-value
2021-09-17 21:45:30 +00:00
Teffen Ellis
3c61d96d4f Bump vscode.
- Fix issue where yarn lock cannot be updated in development.
2021-09-16 20:55:51 -04:00
Joe Previte
7925f88776 fix: comment out logout.test.ts 2021-09-16 17:39:33 -04:00
Joe Previte
ddd09454df
fix(security): update set-value 2021-09-16 13:58:18 -07:00
Asher
b37ff28a0a Export NFPM_CONFIG (#4187)
Otherwise envsubst does not have access to it.

Also print the nfpm config head for debugging.
2021-09-16 19:59:37 +00:00
Teffen Ellis
798dc0baf2 chore(release): bump version to 3.12.0 2021-09-15 15:54:06 -04:00
Teffen Ellis
c8f0d3e32d Remove subtree. 2021-09-15 15:18:33 -04:00
Teffen Ellis
f937849981 Disable CI caching during build. 2021-09-15 14:54:33 -04:00
Teffen Ellis
7f2b1dcd22 Fix outdated selector. Add debug info. 2021-09-15 14:54:33 -04:00
Teffen Ellis
c861a1d796 Enable cache on vendor assets. 2021-09-15 14:54:33 -04:00
Teffen Ellis
f2e65daca3 Disable cache. 2021-09-15 14:54:33 -04:00
Teffen Ellis
f885b29675 Add vscode via vendor package.
- Use yarn for vscode vendoring.
- Grab hash from package.
2021-09-15 14:54:33 -04:00
Joe Previte
28ba59ab3c
Merge pull request #4165 from cdr/bpmct/add-codetogether
add CodeTogether docs
2021-09-15 18:35:45 +00:00
Ben Potter
e5d0f966c6
improve wording 2021-09-15 00:20:16 -05:00
Ben Potter
0ed8c8a294
change language 2021-09-15 00:18:50 -05:00
Ben Potter
3ce2b10076
use same formatting 2021-09-15 00:17:33 -05:00
Ben Potter
5dc7d17d16
add CodeTogether docs 2021-09-15 00:13:42 -05:00
Joe Previte
8e0877561e
Merge pull request #4044 from cdr/jsjoeio-revert-revert
fix(revert): move helm README to docs
2021-09-14 17:34:34 +00:00
Joe Previte
674f37f244
Merge pull request #4159 from cdr/jsjoeio-fix-codecov-config
fix(codecov): use status > patch correctly
2021-09-14 17:13:24 +00:00
Joe Previte
a0f82f73a0
Merge pull request #4144 from galesky/main
Add docs around using duckly for collaboration
2021-09-13 14:29:16 -07:00
Joe Previte
d650894eb5
Revert "Revert "refactor: move helm README to docs/helm.md""
This reverts commit f319fca2915b2bf45c5ba40f553b021274eb9d17.
2021-09-13 14:16:47 -07:00
Leonardo Galesky
7be9972dd5 fix(docs): update collaboration svg icon 2021-09-13 18:12:29 -03:00
Joe Previte
1d4ffda1f8
Merge pull request #4158 from ready-research/ReDoS
fix(security): fix ReDoS in Regex
2021-09-13 14:00:55 -07:00
Joe Previte
14c96164b2
fix(codecov): use status > patch correctly 2021-09-13 13:51:18 -07:00
Leonardo Galesky
0de9c07f0a
Apply suggestions from @bpmct's code review
Co-authored-by: Ben Potter <me@bpmct.net>
2021-09-13 11:08:27 -03:00
galesky
c43cb5b24d ci(docs): fix formatting 2021-09-12 15:00:47 -03:00
galesky
8c2e566b72 docs(): create code sharing docs 2021-09-12 14:55:06 -03:00
Leonardo Galesky
ff34097a1f
Merge pull request #1 from cdr/main
Merge cdr/main into galesky/main
2021-09-12 13:43:16 -03:00
ready-research
ca617df135
[Security] Fix ReDoS
Fix potential ReDoS
2021-09-11 18:40:47 +05:30
Joe Previte
bc3acb071e
Merge pull request #4131 from cdr/jsjoeio-fix-csp
fix(lib/vscode): update csp in webview to allow ports
2021-09-10 17:45:26 +00:00
Joe Previte
82ae47e00b
Merge pull request #4127 from cdr/jsjoeio-fix-screenshot
fix(docs): use png screenshot instead of svg
2021-09-10 17:03:28 +00:00
Joe Previte
9c9883e7a6
Merge pull request #4099 from cdr/jsjoeio-tests-app
feat: add tests for src/node/app.ts
2021-09-10 17:03:15 +00:00
Joe Previte
09440563ca
feat: add tests for src/node/app.ts
This adds a couple tests for ensureAddress.
2021-09-09 17:58:36 -07:00
Joe Previte
a10df0ca2e
fix(docs): use png screenshot instead of svg 2021-09-09 17:58:17 -07:00
Joe Previte
592d9bcbda
fix(lib/vscode): update csp in webview to allow ports
With #3895, we caused a regression where the Content-Security-Policy prevented
images in the previewer to not work due to the ports in the resource URI.

This modifies the CSP in the webview to make sure images are not blocked by CSP.

I assume once we upgrade VS Code, we will revert this change.
2021-09-09 17:54:20 -07:00
Joe Previte
8a1c129dd1
Merge pull request #4129 from cdr/jsjoeio-fix-vulnerabilities
fix(security): address dependency vulnerabilities
2021-09-10 00:23:41 +00:00
Joe Previte
458474f11f
fix(lib/vscode): upgrade yargs-parser 2021-09-09 16:42:38 -07:00
Joe Previte
5f81e29591
fix(lib/vscode): upgrade pac-resolver, path-parse 2021-09-09 16:32:25 -07:00
Joe Previte
293d11330e
fix(lib/vscode): update axios to 0.21.2 2021-09-09 16:28:46 -07:00
Asher
7a735014bb
Push latest Docker tag along with version tag (#4120) 2021-09-08 15:00:34 -05:00
Kyle Carberry
b00afbc034
Resolve remote authority to initialize tunnel API (#4105)
* Resolve remote authority to initialize tunnel API

* Fix linting

* Add comment
2021-09-08 12:50:36 -05:00
Max
b32b4edf3d
fix: run postinstall script explicitly with bash (#4116)
Currently, Windows default script-shell (cmd) fails to run the postinstall script. This commit fixes the problem by running postinstall.sh explicitly with the default bash executable of the OS.

Related: #1397
2021-09-08 11:11:20 -05:00
Stefano Dissegna
0529f52b9d compile extensions media 2021-09-07 23:15:46 +00:00
Joe Previte
8fde5f42b7
Merge pull request #4071 from cdr/jsjoeio-fix-revert-docs
fix: revert revert and add ssh back into guide docs
2021-09-07 23:13:42 +00:00
Joe Previte
2c1aed2395
fix: update tar version with resolution 2021-09-07 14:51:16 -07:00
Joe Previte
b4c5dc548e
Revert "revert: "docs(guide): add ssh into code-server on vs code" (#4060)"
This reverts commit c0d62da127714fd57c51253750824094edaa1ec6.
2021-09-07 14:51:16 -07:00
Joe Previte
67b23aaa1d
Merge pull request #4070 from cdr/jsjoeio-troubleshoot-docs
docs: add troubleshooting section for documentation
2021-09-03 14:10:55 -07:00
Joe Previte
ed1ded51c7
Merge pull request #4055 from cdr/jsjoeio-tests-vscode
feat(testing): add tests for src/browser/pages/vscode to hit 100% coverage
2021-08-30 16:10:31 -07:00
Joe Previte
ccd835c67d
Merge pull request #4076 from cdr/renovate/eslint-plugin-prettier-4.x
chore(deps): update dependency eslint-plugin-prettier to v4
2021-08-30 15:44:50 -07:00
Renovate Bot
ccb30efd54
chore(deps): update dependency eslint-plugin-prettier to v4 2021-08-30 22:22:36 +00:00
Joe Previte
79b4e4780d
feat: add full test coverage browser/vscode 2021-08-30 15:12:28 -07:00
Joe Previte
bd1e9b3843
docs: add troubleshooting section for documentation 2021-08-30 10:32:56 -07:00
Jonathan Yu
c0d62da127
revert: "docs(guide): add ssh into code-server on vs code" (#4060)
This reverts commit efbfe060cdba9a01ee3d7a48b0f6c862ca8e91f8 as
some of the contents broke our doc site generator.
2021-08-28 13:06:33 -07:00
Joe Previte
f23f2190c4
Merge pull request #4050 from cdr/jsjoeio-fix-bots
fix: remove stale label action from ranger
2021-08-27 12:36:50 -07:00
Joe Previte
4798841f9f
Merge pull request #4042 from cdr/jsjoeio-ssh-vscode
docs(guide): add ssh into code-server on vs code
2021-08-27 12:26:16 -07:00
Joe Previte
efbfe060cd
docs(guide): add ssh into code-server on vs code 2021-08-27 11:16:12 -07:00
Joe Previte
607c9b2e56
fix: remove stale label action from ranger 2021-08-27 10:21:00 -07:00
Joe Previte
b5afb0594c
Merge pull request #4048 from cdr/jsjoeio-add-stale
chore: add stale bot
2021-08-26 16:48:37 -07:00
Joe Previte
dbd1a22b7c
feat: add stale bot config 2021-08-26 16:30:22 -07:00
Bruno Quaresma
6c6446fc97
Add check docs (#4047) 2021-08-26 19:24:43 +00:00
Joe Previte
e2a7ffbaf4
Merge pull request #4040 from cdr/jsjoeio-fix-typo-limits
docs(guide): clarify login limits
2021-08-26 10:43:27 -07:00
Joe Previte
070a122571
Merge pull request #4043 from cdr/jsjoeio-revert-helm
Revert "refactor: move helm README to docs/helm.md"
2021-08-25 12:09:10 -07:00
Joe Previte
f319fca291
Revert "refactor: move helm README to docs/helm.md"
This reverts commit bc3fb5e22ff2e4ed7fa68b1d8d746b83924f6daf.
2021-08-25 12:02:39 -07:00
Joe Previte
f2bef942f7
docs(guide): clarify login limits 2021-08-25 11:00:00 -07:00
Joe Previte
c913386dc8
Merge pull request #4036 from cdr/jsjoeio-update-image
refactor: update image in readme
2021-08-25 10:42:22 -07:00
Joe Previte
02d355f461
Merge pull request #4034 from cdr/jsjoeio-docs-google-cloud
docs: add note about external domain in requirements
2021-08-25 10:39:46 -07:00
Joe Previte
15b39e6811
Merge pull request #4038 from sdissegna-maystreet/main
[#4013] backported https://github.com/microsoft/vscode/pull/131408
2021-08-25 10:29:02 -07:00
Joe Previte
8cf694930c
refactor: update image in readme 2021-08-25 10:20:37 -07:00
Joe Previte
bc3fb5e22f refactor: move helm README to docs/helm.md 2021-08-25 09:04:26 -04:00
Stefano Dissegna
d26858b6ad backported https://github.com/microsoft/vscode/pull/131408 2021-08-25 09:08:24 +02:00
Joe Previte
3e55e5e1df
Merge pull request #4037 from cdr/jsjoeio-tiny-docs-fix
docs: fix typos and wording in npm
2021-08-24 16:51:59 -07:00
Joe Previte
f0d3e02491
docs: add note about external domain in requirements 2021-08-24 16:38:12 -07:00
Joe Previte
fa6e86d038
docs: fix typos and wording in npm 2021-08-24 16:35:13 -07:00
Joe Previte
e5a9df322e
Merge pull request #4028 from cdr/jsjoeio-docs-latest
fix(docs): use latest instead of version in links
2021-08-24 16:34:30 -07:00
Joe Previte
1284aa3002
Merge pull request #4032 from cdr/jsjoeio-npm-troubleshoot
docs: add note about npm logging
2021-08-24 16:15:50 -07:00
Joe Previte
4bb3175d3f
Merge pull request #4033 from cdr/jsjoeio-docs-vuejs
docs: add proxying a vue app
2021-08-24 16:06:07 -07:00
Joe Previte
8cf98eaafb
docs: add proxying a vue app 2021-08-24 15:47:52 -07:00
Joe Previte
d0ca3aec20
Merge pull request #4031 from cdr/jsjoeio-ports-docs
docs: add how to change port
2021-08-24 15:45:24 -07:00
Jonathan Yu
ea1b3a7245
chore: add example for parameter/value to Helm Values (#4020) 2021-08-24 15:30:04 -07:00
Joe Previte
5b6db905bb
docs: add note about npm logging 2021-08-24 15:25:04 -07:00
Joe Previte
6f8dba7232
docs: add how to change port 2021-08-24 15:16:01 -07:00
Joe Previte
5b6b1dddad
fix(docs): use latest instead of version in links 2021-08-24 11:54:46 -07:00
Joe Previte
1d8806fc42
Merge pull request #3999 from cdr/renovate/debian-11.x
chore(deps): update debian docker tag to v11
2021-08-24 10:55:31 -07:00
Ben Potter
ffc47d3414
Merge pull request #4015 from cdr/bpmct/win10-npm
improve npm/yarn install flow and add Windows 10 instructions
2021-08-23 19:47:49 -05:00
Ben Potter
60b3323660
remove line break 2021-08-23 19:29:25 -05:00
Ben Potter
dfa63ec37a
Update docs/install.md
Co-authored-by: Jonathan Yu <jonathan@coder.com>
2021-08-23 19:23:45 -05:00
Joe Previte
7cde11e141
Merge pull request #4002 from cdr/renovate/minor-dependency-updates
chore(deps): update aquasecurity/trivy-action commit hash to 8eccb55
2021-08-23 11:53:31 -07:00
Ben Potter
2bfc793631
Update docs/npm.md
Co-authored-by: Katie Horne <katie@coder.com>
2021-08-23 11:06:44 -05:00
Ben Potter
44b532fb8b
Update docs/npm.md
Co-authored-by: Katie Horne <katie@coder.com>
2021-08-23 11:06:34 -05:00
Ben Potter
dae730e64d
fix typos 2021-08-23 09:08:36 -05:00
Ben Potter
f06ecd62e7
format 2021-08-22 13:50:49 -05:00
Ben Potter
7c05069272
add instructions for --link 2021-08-22 13:39:03 -05:00
Ben Potter
0f598e651b
mention --link caveat 2021-08-22 12:49:52 -05:00
Ben Potter
d588fdb1fb
fix typo 2021-08-22 12:45:09 -05:00
Ben Potter
d4ca5a415a
clean up npm docs and add Windows 10 instructions 2021-08-22 12:36:41 -05:00
Renovate Bot
59d659c56f
chore(deps): update aquasecurity/trivy-action commit hash to 8eccb55 2021-08-17 20:53:22 +00:00
Renovate Bot
234b8ade59
chore(deps): update debian docker tag to v11 2021-08-17 03:11:47 +00:00
Joe Previte
30dc47df9e
Merge pull request #3954 from cdr/jsjoeio-add-npmignore
fix: add symlink to npmignore
2021-08-11 14:08:10 -07:00
Joe Previte
bffb009ecd
fix: add symlink to npmignore 2021-08-11 13:49:25 -07:00
Bruno Quaresma
cee0e85e5e
chore: add docs preview workflow (#3958) 2021-08-11 18:33:03 +00:00
galesky
f94e433930 fix(readme): tls docs path 2021-08-11 11:18:37 -04:00
Joe Previte
316c3aa999
Merge pull request #3949 from cdr/jsjoeio-revert-symlink-change
Revert "Merge pull request #3935 from cdr/jsjoeio-rm-symlink"
2021-08-10 12:16:07 -07:00
Joe Previte
ff3b976df8
Revert "Merge pull request #3935 from cdr/jsjoeio-rm-symlink"
This reverts commit 50494472250cbfeb483aa2a4440efe408a30f190, reversing changes
made to 741b834b640be0103cd86e76bac7ce4ea5bb2572.

We still need the symlink for the standlone packages which means we need to redo
how the symlink is removed, ensuring it's only removed in the npm package.
2021-08-10 11:59:03 -07:00
Joe Previte
264d44a11e
Merge pull request #3950 from cdr/jsjoeio-fix-vulnerability
chore: fix path-parse vulnerability
2021-08-10 11:58:00 -07:00
Joe Previte
3c4e720fe5
chore: fix path-parse vulnerability 2021-08-10 11:08:49 -07:00
Joe Previte
cde28a0a0e
Merge pull request #3934 from cdr/jsjoeio-fix-doc-versions
chore: fix docs version to only use latest
2021-08-09 13:56:53 -07:00
Joe Previte
5049447225
Merge pull request #3935 from cdr/jsjoeio-rm-symlink
fix(lib/vscode): remove symlink in npm package
2021-08-09 12:29:22 -07:00
Joe Previte
9d8365913f
fix: remove symlink_asar from build-release step 2021-08-09 11:55:06 -07:00
Akash Satheesan
741b834b64
feat(ci): armv7 cross builds (#3892) 2021-08-10 00:05:31 +05:30
Joe Previte
b22ebd83ed
chore: fix docs version to only use latest 2021-08-09 11:25:17 -07:00
Katie Horne
fb1176664f
Merge pull request #3922 from cdr/fix-code-block
change code block formatting
2021-08-06 18:33:48 -05:00
Katie Horne
b29bf34811 change code block formatting 2021-08-06 18:14:43 -05:00
Joe Previte
e4207355f5
Merge pull request #3919 from cdr/v3.11.1
release: 3.11.1
2021-08-06 13:49:24 -07:00
Joe Previte
c2af5a2dae
Merge pull request #3903 from cdr/separate-link-docs
docs: create link.md
2021-08-06 12:26:38 -07:00
Joe Previte
911af4075f
chore(release): bump version to 3.11.1 2021-08-06 12:17:30 -07:00
Ashley McClelland
8c70dfa387
docs: make --link docs separate entry
link to --link docs from README to separate docs entry
2021-08-06 11:19:53 -07:00
G r e y
73380379da
chore(ci): replace playwright action (#3910) 2021-08-06 10:53:28 -07:00
Joe Previte
f75edc26b7
Merge pull request #3895 from cdr/jsjoeio-fix-webview-uri
fix(lib/vscode): patch authority in asWebviewUri
2021-08-05 16:47:35 -07:00
Joe Previte
99503fb546
fix(lib/vscode): patch authority in asWebviewUri
We do this because resources in webviews don't load properly
when the port is used in the resource uri.

We're not sure why this is happening but adding this fix
to get webviews working like before.
2021-08-05 16:26:05 -07:00
Joe Previte
56f0c4e193
Merge pull request #3899 from cdr/jsjoeio-fix-tar
chore: bump tar with resolutions
2021-08-04 12:45:41 -07:00
Joe Previte
dbb8cfb315
chore: bump tar with resolutions 2021-08-04 12:28:03 -07:00
Joe Previte
570cb69832 docs: note about installation logs to bug report 2021-08-03 18:37:13 -04:00
Renovate Bot
379486ac38 fix(deps): update dependency ws to v8 2021-08-03 11:14:49 -04:00
Asher
afb8662d4d
Query artifacts by branch name (#3881)
This way workflows will still work even if there have been enough runs
to push the version branch run off the first page.
2021-07-30 18:32:22 +00:00
Asher
d9df02e807
Remove Dependabot (#3880)
We use Renovate now.
2021-07-30 11:03:48 -07:00
Joe Previte
ff3b188864
Merge pull request #3858 from cdr/jsjoeio-add-proxy-test
feat: add more tests for proxy.ts
2021-07-29 15:33:17 -07:00
Joe Previte
9137816e33
feat: add getAvailablePort helper function 2021-07-29 15:17:04 -07:00
Joe Previte
42cfa4a7ca
feat: add tests for proxy 2021-07-29 15:16:28 -07:00
Joe Previte
7e43f7d6b0
Merge pull request #3866 from cdr/jsjoeio-reorg-test-files
refactor: clean up test file structure
2021-07-29 15:14:37 -07:00
Akash Satheesan
93c89ba0e8
fix(ci): build+push image in release flow (#3838) 2021-07-29 23:31:46 +05:30
G r e y
0283c35225
docs(install): fix link to helm readme (#3869) 2021-07-29 09:54:33 -07:00
Joe Previte
7a6ec202ba
refactor: match /test/unit structure to /src 2021-07-29 09:48:40 -07:00
Joe Previte
7a5c457209
Merge pull request #3865 from cdr/renovate/minor-dependency-updates
chore(deps): update minor dependency updates
2021-07-27 15:46:39 -07:00
Renovate Bot
16f2bbd007
chore(deps): update minor dependency updates 2021-07-27 21:55:34 +00:00
Joe Previte
36be0b724d
Merge pull request #3862 from cdr/dependabot/npm_and_yarn/typescript-eslint/parser-4.28.5
chore(deps-dev): bump @typescript-eslint/parser from 4.28.4 to 4.28.5
2021-07-27 09:52:30 -07:00
Joe Previte
18b1776cf0
Merge pull request #3861 from cdr/dependabot/npm_and_yarn/yarn-1.22.11
chore(deps): bump yarn from 1.22.10 to 1.22.11
2021-07-27 09:51:53 -07:00
Joe Previte
56ba22f142
Merge pull request #3863 from cdr/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.28.5
chore(deps-dev): bump @typescript-eslint/eslint-plugin from 4.28.4 to 4.28.5
2021-07-27 09:51:24 -07:00
dependabot[bot]
e442542c5e
chore(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.28.4 to 4.28.5.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.5/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-27 11:02:55 +00:00
dependabot[bot]
46e7d7ae7c
chore(deps-dev): bump @typescript-eslint/parser from 4.28.4 to 4.28.5
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.28.4 to 4.28.5.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.5/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-27 11:02:35 +00:00
dependabot[bot]
396e2574df
chore(deps): bump yarn from 1.22.10 to 1.22.11
Bumps [yarn](https://github.com/yarnpkg/yarn) from 1.22.10 to 1.22.11.
- [Release notes](https://github.com/yarnpkg/yarn/releases)
- [Changelog](https://github.com/yarnpkg/yarn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yarnpkg/yarn/compare/1.22.10...1.22.11)

---
updated-dependencies:
- dependency-name: yarn
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-27 11:02:17 +00:00
Joe Previte
6d928a0666
Merge pull request #3846 from cdr/jsjoeio-test-should-enable-proxy
feat: add tests for shouldEnableProxy
2021-07-26 11:38:09 -07:00
Joe Previte
85d8c14b92
refactor: use Teffen's solution for useEnv 2021-07-26 11:21:30 -07:00
Joe Previte
3969a3990a
Merge pull request #3840 from cdr/jsjoeio-uninstall-docs
docs(install): add uninstall instructions
2021-07-26 11:11:36 -07:00
Joe Previte
162f70ac1a
docs(install): add uninstall instructions 2021-07-26 10:55:08 -07:00
Joe Previte
5b5a1f4f97
Merge pull request #3829 from cuining/main
Fix "serviceWorker.js" path
2021-07-26 10:25:47 -07:00
dependabot[bot]
05a97c3e75 chore(deps-dev): bump @types/semver from 7.3.7 to 7.3.8
Bumps [@types/semver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/semver) from 7.3.7 to 7.3.8.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/semver)

---
updated-dependencies:
- dependency-name: "@types/semver"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-26 09:57:26 -04:00
dependabot[bot]
e91b910f75 chore(deps-dev): bump @types/node from 14.17.5 to 14.17.6
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.17.5 to 14.17.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-26 09:56:51 -04:00
Teffen Ellis
ad85573e8f
Merge pull request #3839 from cdr/add-docs-manifest
chore: add docs manifest
2021-07-26 09:51:54 -04:00
cuining
4e489f19b5
Update register.test.ts 2021-07-25 14:49:19 +08:00
Joe Previte
67e9eca942
feat: add tests for shouldEnableProxy 2021-07-23 15:07:23 -07:00
Bruno
be0e5de7eb chore: fix json format 2021-07-22 19:22:53 +00:00
Bruno
8ca8762591 chore: add docs manifest 2021-07-22 19:10:24 +00:00
Joe Previte
7b8cd25c0c
Merge pull request #3760 from cdr/jsjoeio-add-vscode-test
feat: add registerRequireOnSelf on function
2021-07-21 15:48:28 -07:00
Joe Previte
911cb034f5
feat: add registerRequireOnSelf on function 2021-07-21 15:30:54 -07:00
Joe Previte
670f0a152f
Merge pull request #3812 from cdr/jsjoeio-fix-pathToFsPath
refactor: only accept string in pathToFsPath
2021-07-21 12:06:01 -07:00
Joe Previte
d0d739bec8
Merge pull request #3832 from cdr/jsjoeio-codecov
chore: update coverage thresholds
2021-07-21 11:34:05 -07:00
Teffen Ellis
dfc88e3e63 chore: Update dependency requirements. Fix node version manager. 2021-07-21 14:32:16 -04:00
Joe Previte
7ac015ed80
chore: increase jest coverage threshold to 60 2021-07-21 11:15:17 -07:00
Joe Previte
da4f87a7dc
chore: update codecov range 40-70 2021-07-21 11:15:00 -07:00
Joe Previte
cb778d6f36
chore: turn off patch requirment for codecov 2021-07-21 11:14:00 -07:00
Joe Previte
6e33dccb40
feat: add tests for isFile 2021-07-21 11:12:00 -07:00
Joe Previte
5c61318592
refactor: only accept string in pathToFsPath
CodeQL caught a path where we were passing in req.query.path
to pathToFsPath, which may not have been a string.

So we refactored some things to ensure we only pass it a string
which also let us change the parameter type to string
instead of string | string[].
2021-07-21 11:11:59 -07:00
cuining
d71649acb4
Fix "serviceWorker.js" path 2021-07-21 19:09:02 +08:00
Joe Previte
0f451524f9
Merge pull request #3816 from cdr/dependabot/npm_and_yarn/types/ws-7.4.7
chore(deps-dev): bump @types/ws from 7.4.6 to 7.4.7
2021-07-20 11:25:38 -07:00
Katie Horne
a84dd25bdf
chore: update guides.md header to Accessing Web Services 2021-07-20 13:14:57 -05:00
Joe Previte
52c3b0d9b4
Merge pull request #3815 from cdr/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.28.4
chore(deps-dev): bump @typescript-eslint/eslint-plugin from 4.28.3 to 4.28.4
2021-07-20 11:07:54 -07:00
Joe Previte
597cdcb44d
Merge pull request #3817 from cdr/dependabot/npm_and_yarn/typescript-eslint/parser-4.28.4
chore(deps-dev): bump @typescript-eslint/parser from 4.28.3 to 4.28.4
2021-07-20 11:07:07 -07:00
Katie Horne
9d6a154352 chore: update header from Self signed certificates to Accessing Web Services 2021-07-20 09:25:57 -05:00
dependabot[bot]
37b5631795
chore(deps-dev): bump @typescript-eslint/parser from 4.28.3 to 4.28.4
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.28.3 to 4.28.4.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.4/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-20 11:02:49 +00:00
dependabot[bot]
d44c31f896
chore(deps-dev): bump @types/ws from 7.4.6 to 7.4.7
Bumps [@types/ws](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ws) from 7.4.6 to 7.4.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ws)

---
updated-dependencies:
- dependency-name: "@types/ws"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-20 11:02:27 +00:00
dependabot[bot]
8e8abc4817
chore(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.28.3 to 4.28.4.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.4/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-20 11:02:15 +00:00
Joe Previte
475ae45853
Merge pull request #3813 from cdr/jsjoeio-upgrade-codecov-node
chore: update codecov to 3.8.3
2021-07-19 17:07:46 -07:00
Joe Previte
2d022b828d
chore: update codecov to 3.8.3 2021-07-19 16:47:30 -07:00
Joe Previte
f96bcdc91e
Merge pull request #3804 from cdr/dependabot/npm_and_yarn/eslint-7.31.0
chore(deps-dev): bump eslint from 7.30.0 to 7.31.0
2021-07-19 10:22:25 -07:00
dependabot[bot]
c3c57e5516
chore(deps-dev): bump eslint from 7.30.0 to 7.31.0
Bumps [eslint](https://github.com/eslint/eslint) from 7.30.0 to 7.31.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.30.0...v7.31.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-19 16:57:18 +00:00
Joe Previte
3946a5cf2e
Merge pull request #3784 from cdr/dependabot/npm_and_yarn/proxy-agent-5.0.0
chore(deps): bump proxy-agent from 4.0.1 to 5.0.0
2021-07-19 09:54:10 -07:00
Asher
7cfd149cd3
Add "plus" verbiage back to login limits
There was some confusion with the "and" since it can be interpreted that
you can only try logging in twelve times per hour in total but actually
you get two attempts per minute and then twelve per hour on top of that.
2021-07-19 10:15:09 -05:00
Alexander Pushkov
f9f3f38578
Merge pull request #3783 from notpushkin/patch-1
Remove leftover merge conflict on the FAQ page
2021-07-19 10:08:33 -05:00
Asher
589982f027
Fix incorrect manifest build
I mistakenly thought they were for each arch but it's for the version
and latest which makes a *lot* more sense.
2021-07-16 18:25:54 -05:00
Asher
f720b63583
Fix Docker push (#3796) 2021-07-16 17:46:20 -05:00
Asher
9ef6680adc
Fix incorrect version var in artifact script 2021-07-16 17:39:53 -05:00
Asher
a32df56f99
Skip Docker if already pushed 2021-07-16 17:39:52 -05:00
Asher
4cfa384bb4
Skip brew if already published 2021-07-16 17:39:51 -05:00
Asher
3c0799fa59
Skip npm publish if already published
This helps make the publish workflow idempotent.
2021-07-16 17:39:50 -05:00
Asher
8608d8ec74
Fix Docker push
It seems we need to use `docker import` with the output from `docker
buildx` rather than `docker load` like we were doing when we used
`docker save`.
2021-07-16 17:39:49 -05:00
renovate[bot]
903f8d9cc2
Merge pull request #3703 from cdr/renovate/configure 2021-07-16 10:05:18 -05:00
dependabot[bot]
edc50ec7fb
chore(deps): bump proxy-agent from 4.0.1 to 5.0.0
Bumps [proxy-agent](https://github.com/TooTallNate/node-proxy-agent) from 4.0.1 to 5.0.0.
- [Release notes](https://github.com/TooTallNate/node-proxy-agent/releases)
- [Changelog](https://github.com/TooTallNate/node-proxy-agent/blob/master/History.md)
- [Commits](https://github.com/TooTallNate/node-proxy-agent/compare/4.0.1...5.0.0)

---
updated-dependencies:
- dependency-name: proxy-agent
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-15 11:02:15 +00:00
Akash Satheesan
52579f182d chore(release): bump version to 3.11.0 2021-07-15 02:45:10 +05:30
Akash Satheesan
ddee4f748c
feat(vscode): update to version 1.57.0 (#3544)
* Squashed 'lib/vscode/' changes from cfa2e218100..2064d4c301c

2064d4c301c fix issue reporter unit tests
d99a697eb52 Fix #125503
b098b10a77e Merge branch 'notebook/dev' into main
a57e41b7a43 notebooks: more accurately detect old style of renderers
c8a447f93b8 Fix #125507
ae4124aa7e1 Fix #122570
2bcdb95e7df update distro
89d750cd687 add restricted mode to created issues (#125537)
5f7166fd915 Put run menu above output container, Fix #125188
d9cf45e0dba Fix #125526
ab0bd774c91 Pass profiles, defaultProfile, isWorkspaceTrusted from renderer to shared process (#125450)
061403c7458 Switches to new RemoteHub authority separator
0e6d07052c8 remove untrustedWorkspace search for now
1c5b5a632f9 Hide "Customize Notebooks" in getting started behind setting
f843c51bca8 Update lock file
2456872bcaa Bump distro
12547c1de87 remove virtual workspace information from banner (#125512)
6de86dcd840 update notebook layout default values.
0f0abb3dc87 trust vfs (#125523)
8d87a664274 Bump es build
bcdfe884a3c Fix window reload with an empty remote window
a0bc15ff6fc Close Remote Connection shows up in local windows
fe1eafc80c0 Merge pull request #125498 from microsoft/hediet/fix-125034
5eb636f22fc Renames InlineSuggestionActions back to InlineCompletionsActions.
e8ad99de2b3 Merge branch 'main' into hediet/fix-125034
dcf62e3a1e4 Merge pull request #125501 from microsoft/hediet/add-accept-action
fe6fc208e9d Puts EditorOption.inlineSuggest to the right spot.
c6777d5c6c9 Reverts menu rename.
c5bbe0a35ea Merge pull request #125484 from microsoft/hediet/fix-125478
20cb29b076b Fixes #125430: Add a lock around the extension registry.
383ae36449b restricted mode hover: added a link to manage trust. For #125408
1a8285a9654 Adds accept action to inline suggestion hover. Fixes #125472.
2ba1dcb0c9c Removes setting ghostTextExpanded. Fixes #125037.
3300006ee17 * Renames command ids, context keys and command titles to Inline Suggestion. * Renames menu item, makes it proposed API.
f8c061e73d7 restricted trust status bar item should use rich hover. Fixes #125408
620434543f5 * renames editor.suggest.showSuggestionPreview to editor.suggest.preview * renames editor.suggest.showInlineCompletions to editor.inlineSuggest.enabled
4b0c17e1808 fixes #115535
93e61e267ca fix compile error
54dd1429b64 startup timings uses now `exit` and not `quit`, fyi @bpasero
922f866a282 run menu: more precise context keys
f207b383071 inline `NotebookExecuteHandler` type
fa1694c8afb Merge pull request #125465 from microsoft/menubarFix
5efc2e7abcd 💄
7954c27d2d9 Fixes #125478.
f99e1c358f0 fixes issue with asExternalUri API
8163cfd8c54 Make sure we layout editors in sideBySideEditor after they are created (#125445)
387e2f39ebb Properly complete notebook profile step
11f86fefb46 Track opening notebook separately from showing notebook GS page
a2ef11ff553 fixes context keys with menubar
fd2ed91612c Fix wrong CKS on output toolbar Fix #125109
f95fb77f22a Fix cellstatusbar layout issues from "visibleAfterExecute"  Fix #125403
0acf7df100e Fix showCellStatusbar default #125403
a244a4ccc65 improve messaging with remote
5d58be33080 switch to a switch for localization edge cases
ae0e8f04468 uppercase h in localization
885ac7f1c11 fixes #125406
b519331a06b fix #125458.
4c12628b2b5 fix #125234.
0c7e7cf21d6 disable notebook layout getting started.
4cae6713714 fix #125452.
72d325b4bc9 fix #125027
df59dc8470a don't show status bar entry until files are opened
d3db92b7a2e Fine tune image styles. Fix #122680
72a67899410 add settings links to improve understanding of workspace trust
c9e683d6c78 fix #124405
827398db432 fix #125444.
f004a398e0b Fix #125313
b26e1aba58c Remove hashes from override
41b1406d3a8 Revert parts of "Fix #125395" Re-enables GitHub extension in untrusted workspaces
eab8d0403f2 Revert "Fixes #125350: disallow in untrusted ws"
0006964091a Change cell type contextkey to markup Fix #125378
5ea26044187 Fix #124531
0a5d652bdfd Fixes #125332.
f73f263c6bf Needed localization changes for converting xlfs to json (#125442)
0f0f066b392 Remove codespaces walkthrough from Getting Started
96004bc2c97 icon hover: add pointer for element hovers
11debc38469 Merge branch 'notebook/dev' into main
b80011a819c Fix #124049
fd430418a01 Refine `CellInfo` type (#125351)
b2cc8487aed Flip positioning of steps and media in narrow layouts. Closes #125246
5966e9dfec0 Check to see if there are any artifacts that haven't been published (#125428)
a56ef182474 notebooks: fix default selection of untrusted renderer
788e39aad86 #125395 Improve the prompt
062401745a2 Switch loglevel to trace
73de22af596 Close #119722
be1cf4bddb5 Focus contributed profile terminals after creation
60651a0c4de Fix #125030
8f9eedf0019 Merge branch 'main' into notebook/dev
01c6fb557d0 Fix #125395
41163014f8c 💄
490cef7c075 Revoking trust in the remote scenario will reload the window
3f8672be8a4 fixes #124051
6d66648c51b Add snippets for ports attributes to settings helper Fixes #125081
e43c3957f64 rename onDidChangeNotebookAssociation to onDidChangeSelectedNotebooks
732769073a2 Workspace trust - add --disable-workspace-trust flag (#124998)
499e4948c7d Fix typo
41f117753ed debug: update js-debug
20df87725d3 fix build again
15aca96cd5c build - unblock lauching
8b4bc01166a Removes RemoteHub
0f2f7c7f04b Update notebook getting started images
b2a64b1379c Merge pull request #125352 from microsoft/tyriar/migrate
515b7125255 revert a change
fa19cd28adb fix build errors
6f0ce2e7508 Fix #125250
884b1e7a0d0 Fix "Trying to add a disposable to a DisposableStore that has already been disposed of." ref #125354
c8b7aaf2c29 Merge pull request #125340 from microsoft/merogge/onExit
7fd324944d3 Fix selected notebook profile highlights
99665d0b4ac Merge cell statusbar settings Fix #125173
2974dcbd985 Fix bugs causing walkthoughs to not open on install
ab1c9202003 Try setting gettingStarted as default editor (#125321)
ebde979a485 fix cell top/bottom border always active.
7dacb10b591 fix #125339.
e6aaf493989 Move notebook getting started walkthrough to its own section
f473e3dc9f8 fixes #125047
6cc80fea815 fix #125338.
66917f41795 fix #125334.
2356d7c5b76 fix init layout interrupted by editor group resize.
a2a61127667 Hide execute actions from markdown toolbar Fix #125336
0f8c499d101 Migrate profile setting and fallback properly
272208523b5 register the extension request handler once workspace is resolved fixes #125342
4c57cf40313 fix #125175.
bbc4995eca7 fix #125176.
195477a0e96 remove unused import
68e862e1d62 skip flaky window test.
9bd7cbd1403 notebook.insertToolbarLocation
769e7080f4b Fixes #125350: disallow in untrusted ws
ae2f0b39e63 Fix #122741
8f3a47cc88c add singleTerminal argument
6ef81b30370 add safeDisposeTerminal to terminal service
b295408c303 tweak wording
fa8a7a84a13 Merge branch 'main' into merogge/onExit
895dbf4dfd0 fix #125069
60dd761211b update the layout based on treatment.
26cd18321bd remove backwards compatible tests.
d215fc72380 Fallback to active editor if no webview is focused
c5a4158a651 fixes #125247
3d0d203bb02 fix #124849
509906cd916 Merge branch 'notebook/dev' into main
4d4f0b528a2 fixes #125319
093b03bb39e fix #124854 Co-Authored-By: Daniel Imms <daimms@microsoft.com
c4da8f4ab15 Improve terminal drag feedback
55f01b11fa0 fix #125067 fix #125039 Co-authored-by: Daniel Imms <daimms@microsoft.com>
941a603ccd0 Revert "Try fix getting started as default crashing integration tests"
0206b2ee43f Try fix getting started as default crashing integration tests
d0ba023c71e Fix #122680
48fcde4048c Fix #123476
0543065c41a Don't commit inline completions on tab when "tabMovesFocus" is active.
e2ad6d2c9a8 Merge pull request #125126 from microsoft/hediet/make-hover-unselectable
b49731160d3 Add henning to my-endgame notebook
1fee13180b7 Vertically center notebook profile list
09a3fa687a9 Resets context keys properly when editor is disposed.
c324c61ad57 add closing tags
e92e3d1a9ea Reset context keys when Ghost Text Controller is disposed.
ec5bf6733ca Fixes "Ctrl+Z doesn't retrigger inline suggestions"
26ff863e3d4 Merge pull request #125221 from jeanp413/fix-125035
ce8d2e86028 make IHoverDelegate.placement optional
32e6054985c Adds more documentation to the proposed inline completion API. Fixes #125267.
20be2c8eaa2 icon label hover: allow element placement. Fixes #125090
232412ff87b adopt terminalTabList
60a36219813 Revert "icon label hover: allow element placement. FIxes #125090"
4aa9f8271b8 Merge pull request #125292 from microsoft/tyriar/themeicon
8223d3d5c7f Fix #125156
0a32357e6d7 Fix filter.filterQuery initialization
3099c6f1c1b ios: trigger list/tree/table context menus
3a388466b85 tree viewer hover delegate: command handing now comes from hover service
1d471214fb3 icon label hover: allow element placement. FIxes #125090
0ee6895a6b8 Convert vscode ThemeIcon to internal type
e040c0881f7 Workspace trust - calculate trust before extension host starts (#125283)
ea339694fc7 fixes #125272
727caa7f238 Merge branch 'main' into notebook/dev
e0131062c84 bail on standard start when workspace isn't trusted
0bf73ff15ab make sash work better on ios
9764a02c5d3 sash: use DomEmitter
df709ddd3d5 Fix otherPortsAttributes protocol not updating correctly Fixes #125079
ef0fb8afb89 Revert "use associatedResource instead of untitledResource, https://github.com/microsoft/vscode/issues/125028"
073c4ffd7da remove deprecated notebook-namespace, notebooks is the future
a24c1495208 Merge pull request #125281 from microsoft/hediet/allow-inline-completion-array
2e53913b637 Separator in remote indicator can appear/disappear. Fixes #122309
d71e5718c90 Fix ctrl+click to open link in ports view Fixes #125076
f32b38aa216 Allows to directly return an array of inline completions instead of an InlineCompletionList.
b5bdc48d553 use vscode.notebooks not vscode.notebook
3d2309d4e74 Set icon for custom pty terminals
e537c47c63c Fix double extension terminal profile creation
a3337d01bb0 more api polish
17da5e37217 use associatedResource instead of untitledResource, https://github.com/microsoft/vscode/issues/125028
7051f7db889 Sort content of XLF files
109c9d9486b adopt viewType everywhere and drop support for it, fixes https://github.com/microsoft/vscode/issues/125163
b1e613481bb fix https://github.com/microsoft/vscode/issues/125163
9796ac82c3f (re)move NotebookCellOutput#id into proposal, also remove ctor overload that allows to set id
a14600c325f editor trust - limit trust validation in `openEditors` to the places we want
39e7fd6a779 Merge pull request #125128 from microsoft/alex/ghost-text
a1e7ce9cde2 tackle more todos, change ctor of NotebookCellData
0c3646199aa editors trust - support opening diffs into new window (#124618)
592ae5a1f53 editors trust - make sure diff editors bring up trust dialog too
a286059b90d macOS - workaround fullscreen window regression (#125122)
82acbe807f2 updated todo search file
ac05ae7b6f0 move file'ish things into workspace namespace
e57462fd1f6 dnd - only add file system resources (for #125187)
0b6e70302f8 remove deprecated API
dfc47c79571 rename notebookViewType context key to notebookType
542655758b4 fix https://github.com/microsoft/vscode/issues/125138
f2d6da27d01 make sure appendOutputItems and replaceOutputItems return something
ee87b2bd432 missing adopting for end-call
d487b379bae Merge branch 'main' into notebook/dev
7865b99b44e Fixes #125035
febc20e8d39 safari - disable clipboard error notification
e7b9f3a1a40 Show a confirmation notification when installing/uninstalling shell commands (fix #125145)
217f1a2f60a Workspace trust - extension enablement (#125179)
b154a3d3043 skip view column test.
322c81122dd Add "move cell up/down" to the cell context menu when drag and drop is disabled
a90729cb6f0 show notebook profile the first time when a notebook is opened.
c55d8a0e16c select notebook layout action.
b2da4119928 Add undo/redo per cell for jupyter profile.
7aa8c5ec4a7 Fix profile contribution schema
2d97edd98f2 Update QuickPick api doc (#124485)
8df0f068588 Group startTime and endTime into a single object
ef28d1663d9 Inline parameters to execution task start and end
5c6ae4fc5ac Update NotebookCellStatusBarItem constructor
872bbcc8c1c Update provideCellStatusBarItems
28bf10376c3 Add 'notebookLayout' tag to suggestions
4dd5ccb1566 Make registerWalkthrough public
d2561813a8d Merge branch 'notebook/dev' into main
dc9dc66109d tweak fix
ac7bb556e8f Disable "consolidated run button" in Jupyter profile
4449461cae4 fix #125121
a296485f007 fix #125045
8e86a3c6b16 Enable consolidated run button by default, now that Jupyter has caught up
515c64f05e6 fix #125125
5e27fb3ba85 Fix to make @recommended:languages search work
84196c8b8d3 fix: update colors
950ad4ffec5 colors: add support for exporting colors
2c503281922 Add import to pull notebook getting started content into build
9bd78a8bf53 notebooks: restore renderer messaging generic
088e0d282ee Revert "fix #125137"
d6d3091cbd3 fix #125137
c7f8b301938 Revert "fix #125137"
67e64a8fc86 Merge pull request #125083 from microsoft/ben/69349
80a899d8d67 fix #125040
aeecc7c03ff notebook: messaging api polish
4df863a28da Remove extra notebook images
092a2242ce5 fix #125137
2e8e888989a editors - more tests for capabilities
b743bf63de1 fix #125124
d6d9200832a notebook: fix mimetype switcher not working between custom renderers
ebcbe001591 update todo search file
6dbbcc2eee7 fix compile issues...
e8d8e53752a update/tackle todos
6fe84c402bb Merge pull request #125106 from microsoft/joh/api/noMetadataType
553893e940a Merge pull request #125104 from microsoft/joh/api/noItemMetadata
632f2156f2e remote indicator: remove vscode-vfs workaround
5a49e6a283e Focuses the editor after showing next/previous inline completion.
1bab611b73b Sets user-select: none to the hover actions so they cannot be selected anymore.
103d3edfdc0 Fix text replace case operation false positive Fix #123483
a3bad5878ef Add a protocol property to tunnels that corresponds to the attributes for that tunnel and is reflected in the UI.
bd8a0fb3d76 Fix #124779
0115c74d4af update todo@api search file
8dd2e53e247 bump versions
a476c9d4f08 fixes #124850
0580a6bae45 Settings: remove notification that changes are saved (fix #69349)
545b931b96b remove dedicated types for notebook and cell metadata
b1457fa4b6d remove NotebookCellOutputItem#metadata
e7b775adebf Revert "fixes #115535"
ae86512bf07 Fix automatic task timing Fixes #125044
6a02e8333c1 small jsdoc and todo tweaks
952e39f9d2d fixes #125026
d163f3f3d45 tooltip text grabbing broken. Fixes #124457
e9d05647b3b update distro
122df438a80 Run OSS Tool
89157c1a87a notebooks - tweak description for untitled files
1e446dfadf5 Don't hide suggest widget when expanding ghost text
ab80101db2d Revert "Fix regression with extension enablement"
24e1234559d [json/css/html] update services
a8a57c3fc67 Merge pull request #124288 from huszkacs/bug/issues_with_backspace
a4e1a259a2b Fix tests that were not updated
91b7e6027ad Move vscode.newWindow & vscode.removeFromRecentlyOpened out of apiCommands. For #110583
2ae32273fd2 update my-endgame notebook
0a1046ada41 Merge branch 'notebook/dev' into main
2f253fcc220 more todos
4093effb9b0 Merge pull request #124964 from microsoft/alex/ghost-text
79048992ef1 Adds leftTrim function, fixes bug in inlineCompletionToGhostText.
b1da1fbc8c4 Merge pull request #124972 from microsoft/hediet/fix-negative-overwriteAfter
3a259a7a6ae The replaced text does only need to be a prefix of the insert text after removing all leading whitespace.
1176faf27f2 Fix #119265
78c865d70d4 polish remote menu control actions
4ebf68103e6 readonly [] over ReadonlyArray...
67a85487125 Expose the inline completions provider in the monaco editor.
1eef15f0d54 more todos for notebook API...
552d457b718 updated code search file
f700cab7c36 💄
2031df26538 rename hasExecutionOrder to supportsExecutionOrder
f2fb2b8cbe3 rename viewType to notebookType, https://github.com/microsoft/vscode/issues/122922
ae17cc95591 Improve autocompletion for statusBar/remoteIndicator contribution point. Fixes #122566
efcf0eea9bc Remove default support from  vscode-translations-import
b55d4384260 Fix regression with extension enablement
b7be98705fd Update descriptions
220f89ba3c6 jsdoc and todos
1e57955c798 Remove handling of Default inno setup file
e1928efbb63 notebook API finalization part1
cc8ff11f574 Fix recursion exit condition in variable resolver
2e026cf7c28 more API todos
0fde806bf85 Add limited support for variables that resolve to other variables Fixes microsoft/vscode-remote-release#5007
355df0eccb6 move renderer script and IPC into proposed and merge with general renderer IPC, https://github.com/microsoft/vscode/issues/123601
da851abcd6f jsdoc 💄
8d244362832 remove resolved todo
83d5e2bda06 rename namespace to notebooks, https://github.com/microsoft/vscode/issues/122922
594fc814bca update untitled hint to work, use the correct setting name
f68ee48c524 Fixes #124742 by ensuring that overwriteAfter is not negative.
edf85f1711d fixes #122402
3b407e0b6c1 move onDidChangeNotebookCellExecutionState into proposed, https://github.com/microsoft/vscode/issues/124970
e9579534bb2 Only trigger session when typing, not when the model context changes.
6832b7ec4b0 Disables rendering visible whitespace due to feedback. This makes ghost text less real.
7cd53df7d72 Swaps previous and next inline completion actions in the hover menu.
427f48b8d17 Add prebuild commands
dea978dd1c1 custom hover for remote indicator
8d41153ffc5 support custom hover on status bar entries
d4161177d98 don't use console.trace for all...
692fb8ab211 print trace for potential cycle, https://github.com/microsoft/vscode/issues/124723#issuecomment-850674813
f55a5243a43 don't use console.trace for all...
910d70bb88d print trace for potential cycle, https://github.com/microsoft/vscode/issues/124723#issuecomment-850674813
8b04a825b49 Merge branch 'main' into notebook/dev
94f47f44c98 Merge branch 'main' into alex/ghost-text
d776f0c1eba Fixes border color. Renames to ghostTextBorder/Foreground.
85f9447b720 Call adjustWhitespace on snippet.
db1bd650dcc Don't compute ghost text that is not supported. Thus, no space is reserved for unsupported ghost text.
4f3d865a6b4 refactor for cleaner initialization (#124904)
ccb0a8c2d93 Revert change in default due to build failures
6737ea008ff Change executionState to state
6949856b195 Remove API todo
038bac01c41 jsdoc for notebook cell statusbar API
667e3dd844a Tune getting startred color picker
bb5b6afdce4 Remove "primary" in favor of alway opening the first applicable walkthrough
6adfa8b3135 Enable getting started as default startup editor
b2f203113c1 editors - more alignments across editor inputs
ada71479023 Open getting started the first time a notebook is opened
08eedafbd60 Finish getting started content
b0862e99074 Don't include our loader in notebooks (#124864)
26b9218d64f Merge branch 'josola-edit-devcontainer-readme-markdown' into main
ad52b3f4583 Fix merge conflicts
09d1935b4cd Correct dev container info in README
1605d16ee3d Refresh dev container content
d7a79f0393f Add notebook profiles to Getting Started
887ff91a14a Merge branch 'notebook/dev' into main
5e7cd998762 Bump TS build version
e3354e26eff Whitespace characters are near invisible in High Contrast theme (Fixes #124612)
bb4e83a19a8 Improve hover stability and handle case where mouse is directly over inline ghosted text
aada268951a update distro
5fe858a229c Workspace trust explainer in getting started
f568f5aec3a Avoid scaling down SVGs in Getting Started
eb65a93f4bb Include import ref to markdown so it gets included in bundle
bbc7af71930 fixes #115535
3772aeec10b Typo
24143e91320 Merge pull request #124828 from microsoft/alex/ghost-text
868b84ceb99 fixes #124850
f509e7552a9 update classifier
676340ffad9 Get expected service worker version from renderer instead of main.js
3bfa3455a6b Fix incorrect reference when 404 on webview resource
445dc50f737 Use unique id for releaseNotes webview
1380c0c5e0b Remove unused code for rewriting endpoint
8058ab1a966 Disable consolidated run button by default
15616f8d936 refactor codeExchangeProxy to use same route and use it for refresh token as well
a6f4d96b826 Fix #124049
44a24280846 editors - unset preferred mode/contents before attempting to resolve
c784a74b8ba send Output metadata, not just OutputItem metadata, to renderer
ea02f214c74 Merge remote-tracking branch 'origin/main' into alex/ghost-text
dca2b9e2db8 Show hover over multiline ghost text
ab1cf30d883 add api-todo code search file
affbf49ccca Introduce `HoverAnchor` to allow hovering on something other than a range
4202ab071a6 rename NotebookCellOutput#outputs to #items
b16b45fecb8 Tweaks the effect of showSuggestionPreview and introduces showInlineCompletions. Explicitly triggering inline completions will now work even if settings are disabled.
d2854fd7877 fix #124842
d9f1e27aeb9 more API todos
394a1ce2dbc Merge pull request #124752 from microsoft/tyriar/term_trust
2f0a9160d0a more jsdoc, also more API-todos...
9eb940e243f Remove padding left (#124823)
42af32d16a0 do not use shadow dom for editor context menu for iOS
6c10a5334ee add jsdoc placeholder everywhere
e7776ccdcc3 Setting for specifiying the local host for port forwarding Fixes #124581
e15f4026511 Add `mightBeForeignElement` detail for `CONTENT_TEXT` mouse target types
a2d1bd0d158 Adds menu 'editor/inlineCompletions/actions' that extensions can contribute to.
098dfd56e3c Changes shortcuts of next/previous inline completion to Alt + Open/Close Square Bracket.
00de32d013a Keep track of the span node used for hit testing
8e54aed67b7 Remove `IHoverPart.equals`
ccfda77c8e6 Reorder participants to improve stability
77bc8745b29 jsdoc for NotebookController
71fafe39464 update jsdoc for `NotebookCellExecution`
541a5d4fa70 smoke: trust dialog should appear in 5 seconds, and we can ignore if it doesn't
5b642616ef3 Use loading + spin codicon for task terminals status Part of https://github.com/microsoft/vscode/issues/121659
04e09dacdfd refine output modifications of NotebookCellExecution
3a857fc436d editors - add tests for capability change events
004f6609f8c Fix problems with port protocol
903e219ccb8 files - need to track individual readonly stats everywhere (#124524)
466dd4e490e files - provide access to stat object from not modified error
872fac207ee Merge branch 'main' into notebook/dev
d5c73cc952d fix https://github.com/microsoft/vscode/issues/123570
3ac57c71329 Fix NPEs caused by extension that is not in the marketplace
df03e4caadc Removed unused MarkdownString.
e5f70e8e2a2 fix smoke tests (#124814)
47d3d743cad set max zoom to 8 (#124769)
b2da15ea2d8 Merge pull request #124745 from microsoft/alex/ghost-text
a9c54044e50 Refactors inline completions model.
ccedcbdf5ec Do not accept suggestion on tab if indentation is suggested.
a2944c32ea9 Fixes rendering of whitespace in the inline decoration.
8a3f351eb9c Use explicit context when the user cycles through suggestions.
1fa3397c48c fix post-merge hickup
a97ebdbabc8 Merge branch 'main' into notebook/dev
8715d80695f fixes #124809
7a767570e85 editors - more tweaks to dnd behaviour
07ff28c58d2 Dont center markdown content
3ea0bf8fbca Implement run button with extra actions, and "run above"/"run below" actions
970858ef6dd Add first pass of color theme selection markdown content
29cad8fb5e6 Merge pull request #124754 from microsoft/tyriar/profile_api
e0c8a76b7ad don't sort scope list. Fixes Microsoft/vscode-pull-request-github#2751
c1448f3161e Remove ansi escapes from localized string
9eeb092206f Re-enable skipped test
9b609ab1e11 Clean up profile provider api
e8758933d80 Disallow custom profiles as default
e037348d272 Support launching contributed profiles from dropdown
280e0070733 Add undocumented always syntax only TS server mode
866ecdd45a0 Merge branch 'notebook/dev' into main
1c3cc87bccb Add an `InlineCompletionsHoverParticipant`
7ce379e3f2b Merge branch 'main' into tyriar/term_trust
d9e043161fb Bump sw version
73ff24e451d Fix de/encoding for rewritten vscode-resoruce uris
b8f11107f72 Use @types/vscode-webview
decb1ab6a89 update left aligned plus button margin.
484b04df64b fix #124774
902bb43b3b1 testing: move back to proposed
31aef10814f testing: hotkey for opening output peek
14a013e7f3c Support contributed profiles in dropdown
dd61b26f33a enable workspace trust by default #wt
5338cc32da7 fix build.
4403b9010e5 Tweak remote workspace trust calculation
e3d4313714f support editor options override.
384f42bca76 Tweak wording, fix #124724
0dd52e2d77f Update distro
b157bc7e5c3 Support for @recommended:languages search (#124546)
9224159b004 Migrate users from shell -> profile settings (#124615)
d2a0bfb2866 editors - log error when opening fails
61f3ac6e07b support context keys in menu bar (#124726)
0de0faecee5 fix https://github.com/microsoft/vscode/issues/122376
f523f65f398 Add a `description` field to decorations to be able to find leaks
4c5a061df61 rename NotebookKernelPreload to NotebookRendererScript
9ef57b5c216 remove NotebookCellOutputItem#value, https://github.com/microsoft/vscode/issues/123884
4ad3265cbed Support workspace trust in terminal
a56fe2b397e use isVirtualWorkspace
ed611d0ec39 Minor tweaks
4edb0110f6b Small tweaks
7bd0337d940 Move parts of the triggering logic into the widget
2508b33f0d3 Wait for listen when making tunnels
7a83e5aa627 workbench API: assumeGalleryExtensionsAreAddressable
e94e8ed3998 Show default profile on top of term dropdown
693677c8a24 babel.config.json language mode should be 'jsonc'. Fixes #124683
cd501b2e5bb Merge pull request #124741 from jeanp413/fix-124735
9dd89100b49 Improve editor DND to work with untyped resource editor inputs (#124749)
14a4548e4ab editors - use preferred content only once
da1193950a1 some jsdoc for NotebookCellExecution
30074591eea editors - input 💄
55d91bbed87 editors dnd - more 💄
9d907212baf rename NotebookCellExecutionTask to NotebookCellExecution
5d534b94f83 dart: fix language configuration location
d0d80ec337f fix build
23fb4207373 Merge branch 'main' into notebook/dev
0637663fcfe fix isNoCorsEnvironment
9095b835bbf editors dnd - fix dirty contents in files diff
c870d75473c editors dnd - enable diff editor transfer
70418f0aced editors dnd - fix untitled transfer
bba59424f56 Merge branch 'main' into ben/better-dnd
367a0b809ab editors dnd - towards allowing any untyped editor input
6ba7093a8a1 Fix window/folder/workspace terminology for status bar entry and banner
9638534dd51 Fixes #124735
c1d4497a31e Merge pull request #124664 from microsoft/aeschli/dart
1082913dd01 fix config default value.
433c801dcc3 editors dnd - some more cleanup
cbbdb17b80d editors dnd - rework to allow to set contents to untyped editors
b5b059d2e2b fix typo in files.ts (#124693)
5eec3c86e3c smoke test - disable experiments
85d8f223c70 Remove keymaps from getting started walkthrough
02968bc2503 Call post message to all parent clients
1fd2b4ed1e3 Rename keys and support full context key expressions for check offs
14b31425b90 Fix #124531
bfb94c85fa3 fix build.
c95af9ae460 fix build.
8519a42c5f6 notebook options respond to view type specific cell toolbar position.
e3c8ff57849 try showing the banner only after some files have been opened
561b8364008 testing: fix hidden tests not being un-hidable
ade83f05895 update context based on outputs.
574696980c9 notebooks: update state of messaging spec internally
c4fda24034a testing: fix terminal being shown inappropriately, use beaker
0feee9edefc Remove `instanceof` check
641c2b175ca Merge pull request #124707 from microsoft/alex/ghost-text
e0a52df1695 Merge branch 'notebook/dev' into main
c3d63c1a1b2 fixes #124692
8e9405e7a9b Keep the `ColorPickerModel` alive between repaints in the `ColorHover`
35b43a410b0 Help TS understand the code
ebdd548be22 fixes #124702
c538781d780 add notification if tsserver logs are left on for more than 7 days (#124149)
363e8f25f6f bump distro
244b48af73d testing: additional actions and better theming for peek
a5bbc53e882 Extract more color picker related logic to `ColorHoverParticipant`
4e6fe2dc51e Extract pieces of the Color Picker logic to a new `ColorHoverParticipant`
fd7c71a2eea 💄
c88d5756213 update compact view default value.
1e6b6cb6843 Pick up TS 4.3 final
6a12866c3e9 💄
1abeaf97753 Workspace trust - remote workspace (#124617)
a430e8f9692 Fix settings dropdown hover style Fix #124207
b6acb191fac Fixes #124665.
99bcc8e2458 Show clear outputs only when there is kernel.
9252be4f90a distro
21bf10d4977 Removed unused member.
54ebd819176 distro
f1a5d40aa75 refactor getCallbackEnvironment to return authority by default
5eddbd9d207 Properly support splitting ext profiles
08cf3df7457 Pass object instead of unwrapped args for term create
d7779916566 move buildExtensionMedia to lib
62e8b545f7a missing build
51a5caf3f23 Simplify terminal creation
bf5f7dd5ec1 Get split terminals working
d1ed9c8bf35 Adds proposed API for window.getInlineCompletionItemController(...).onDidShowCompletionItem.
3ff91e7621b Merge remote-tracking branch 'origin/main' into tyriar/profile_api
7f21b1af485 Revert "Allow extensions to create multiple sessions from the same provider (#124640)" (#124705)
4583ef442b0 Fixes bug that "show previous inline completion" actually shows the next one.
8f0589da177 Set suggestionPreviewExpanded to true by default.
9464d14f317 Make notebook renderer activate potentially async (#124647)
5eb64c54ca4 Modified markdown preview nested list styling (#124445)
23e1f261dc8 Remove `HoverPartInfo`
84bc432011c Add `IHoverPart.owner`
31a59b5970d bump distro
e6a1cc38437 Update commands.json
e29194ad0d3 Activation event, register api
6a7c700a12d file working copies - do not throw from ctor anymore when schemes are unexpected
bfccdcb9581 disable fullscreen on ios
764d8fdc3dd test: add test for event Relay (#119070)
a7ab347c2b3 remove old notification
d662cc56549 remove old license notification
c704e43d5dc Check that the /build/ folder compiles
0e3459b0b9f expose Grid.onDidScroll
0a4bfb31c90 fix naming
a628237458f Web: "Open Folder" on empty workspace does nothing
4cda850edf5 disable welcome editor in smoke tests (fix #124674)
0688745e82e Color.Format.Css.format does not return null, so the return type can be made more strict. (#124568)
dff33d73244 use actual object
0d44b63c1c1 fixes #124407
9cba86888c9 update node version in optimize
0a7a69f1908 fix build compilation
9eb4eff77b8 some more jsdoc, https://github.com/microsoft/vscode/issues/124357
d63a69abf3d some enforcement of unique mime types in the extension host, https://github.com/microsoft/vscode/issues/124357
24ca9e0d7c7 Merge pull request #124654 from ValidMelvin/main
a961587ecf7 dart as built-in language
98dc73a3296 unnecessary space in in julia cgmanifest
c97189d9d06 some more :lipstsick: and simplifications
a48d92d0fd8 only pick the first occurrence of an item per mimetype, ignore others, https://github.com/microsoft/vscode/issues/124357
18b6620bc39 fixes #123543
c2cc9b11afe Update README.md
14f61093f43 fixes #124507
69259e84a0a some 💄 for  https://github.com/microsoft/vscode/issues/124357
44b470c99ff fixes #124576
47d00215aff editors - cleanup untyped editor interfaces for text capabilities
04f585a580a cleanup interfaces
e12f21f498d Merge pull request #124549 from DonJayamanne/createNb
5e146d257b5 Update classifier.json
d0884f4a1ec webview - clear group listener when it gets disposed
fe1547c251b Merge pull request #124621 from microsoft/roblou/diffNotificationMessage
5cc9ec944d8 sandbox - bring in iframe based webview service
3084319750b Get rid of classes for workbench editor options (#124589)
b82b90c1000 editor options - more 💄 before merge
a18ea9c9ec2 Allow extensions to create multiple sessions from the same provider (#124640)
21162bfb68c Shift execution count label down just a bit
68efd480d0e Explicitly convert properties to strings before uploading
ad41b3a12b5 Mark a few more props as readonly
0a7061ed002 ReadonlyArray -> readonly arr[]
24a23a8ea05 Mark array params in vscode.d.ts readonly (#124599)
7d50ce2061e fix tests
2521499104b testing: add clear test button to peek view title
57af60a7b7f testing: initial test message split view
473cfe28bfa Revert "Revert "Merge branch 'main' of https://github.com/microsoft/vscode into main""
8822790908b Merge pull request #124622 from microsoft/gettingstarted/navigateToStep
7c01395da16 Revert "Merge branch 'main' of https://github.com/microsoft/vscode into main"
7a976501eb3 Merge branch 'main' of https://github.com/microsoft/vscode into main
22576768342 Applied new style to first getting started walkthrough
8ccc1243fc0 Fix notebook unit test
b0f67df65d7 Fix build
bb19c28fe2c Getting started layout polish
2d9aa1868ae Fix broken @tag in settings editor Better fix for #124520
0b2d890624c fixes #124619 #wt
20ce9d57629 fix weird border rendering on windows.
b4f4839da5e fix integration test
6bcd590a706 Merge branch 'notebook/dev' into main
e1731e91048 fix build
f378cff1a8e dropAndDrop -> dragAndDrop
032920fa2ee vfs -> virtualfs
72c4bd69c04 remote menu: sort entries of current remote first
757fd91f040 Hide TestReolver.newWindow when in virtual workspace
cf2a866b7dd test resolver: supports untrusted workspaces
68ba0141fbd fixed notebook focus indicator margin
5926c50d6c4 fix missing markdown height update
33209f104db update markdown height on options change.
7fd8f828c02 fix pwsh profile test failures (#124613)
8f18f3c5ff2 oops
771446e4a21 Make showCellStatusBarAfterExecute not experimental
71cc917274f Add option to show cell statusbar after execution
3ccbe2a6b1b Fixes #124247
789a91a487d wip
db6ffb43b90 fix #124583
c351b396cac Support terminal renaming inline in the tabs view (#124533)
33eb149bada Add reset to default to terminal tab color selector
18b30e5b494 Fix default shell args for debugging
a8b63f564af Merge pull request #124585 from microsoft/alex/ghost-text
19c88bc3c7a editors - more EditorOptions cleanup
5254e33173d Removes unused const.
af0078d44d5 editors - more EditorOptions cleanup
de08dcdf276 remove folding classes first when config change.
c17917e6ba4 Enable notebook renderers on web (#124557)
f2b1f78ad45 editors - remove EditorOptions
a21b824704b Enable notebook renderers on web (#124557)
0249ae32871 clarify that NotebookController#id should be stable, https://github.com/microsoft/vscode/issues/124535
080f8b5e35f editors - remove TextEditorOptions
8adc16d6c50 editors - remove TextOptions#create
b10db1828d0 editors - remove TextOptions#from
9bdb8f88816 editors - remove TextOptions#fromEditor
593a25d41e1 editors - remove TextOptions#apply
741beb8f264 TestResolver, use 127.0.0.1, not localhost
3de3141ff56 Implements basic cycling through completions.
4d4ebbee5fc Clear inline suggestions cache on commit.
f89fc476de3 Fixes colors for dark & white theme.
a78bc1aa96d icon label: supportIcons implies LabelWithHighlights
d4307f8d534 missing validation for top-level token color object
b6551f8e4e3 Workspace trust - no need to call setWorkspaceTrust (#124566)
afc2b062703 editors - start to remove typed editor options (notebooks, search)
64b0c65b8cb editors - fix cyclic dependencies
5880a6a4eeb Merge pull request #124570 from microsoft/hediet/ghost-text-expanded-by-default-setting
ce8b0049619 Merge pull request #124353 from microsoft/chrmarti/localinterface
97d576cb085 editors - more cleanup of large files
43b7187c3df Force inheritEnv in ext debug terminals
0685a4af28b Default bash, zsh and fish to login shells on macOS
a26ecef44b5 Add self to workbench-diagnostics
8a1de4b022a Merge pull request #124567 from microsoft/hediet/fix-after-decoration
0efc03fb168 Removes unused import.
5364a9351fd Adds option "editor.suggest.suggestionPreviewExpanded" to toggle whether suggestion previews are expanded by default.
8bd49ffd50b update distro
eff82a3cef1 rename trusted types CSP from notebookOutputRenderer to just notebookRenderer
ffd1f84ea9f rename notebookOutputRenderer to notebookRenderer, https://github.com/microsoft/vscode/issues/121819
fd212e712ea validation 💄 https://github.com/microsoft/vscode/issues/121819
52df34dcf19 Fixes invalid cursor position around after decorations.
eebf8e876ab editors - extract input and side by side to own classes
42e59bd3777 more complete cell info for markup renderers
e11764f8420 add ICellInfo#data to eventually replace bytes
b5fc2b0a398 NotebookCellOutputItem factories allow for metadata, expose "bytes" as data property, deprecate value-property, fix converter issues, https://github.com/microsoft/vscode/issues/123884
856fb393cb4 editors - more dnd code polish towards any editor dnd
f2248508a68 fix tests on windows
ab793cf02ac editors - make dnd code ready to delegate serialisation to respective editors
59f5bbaf253 editors - cleanup editor descriptors and 💄
dee37c6e765 web - offer upload action only for editable folders
e0f751f1287 editors - introduce and adopt capabilities
71d00b3b993 Merge branch 'main' into notebook/dev
0bada155580 more API todos
76523deb91e Bump browserslist from 4.16.1 to 4.16.6 (#124550)
963f30f0871 💄
b1823157d54 Fall back to existing published webview commit (#119295)
286b643ecd2 chore: bump electron@12.0.9
c3c2113c368 Preserve execution summary when converting dto
8173a0e0398 Fix hang when typing incomplete @feature in settings editor Fix #124520
28803975a1a Add @feature/notebook
e9f3fe9f301 rename markdown layout section.
fe41fcc58d6 💄
fe3cab25c5f compute position/width of output action bar.
af14bf673ab remove kernel picker config in menu contribution
1da9f2d2e6a Update subscribers.json
d28d8802e42 testing: add default keybindings
8b9f8595cc2 Remove unused
6cfad71ce61 notebooks: remove deprecated vscode css vars from webview
196e79256dc Add workspacePlatform context key for getting started items Closes #123824
6ed2584f390 fix unit tests.
46ef54c20e9 Merge branch 'notebook/dev' into main
8a41d85d1be notebook open layout settings.
f88c007f6c6 👋 Rachel, 👋 Tyler
d7ead317dca Close #122570
41d869f5514 move nb layout settings out of experiments.
79762396a06 Respect soft revert for custom editors (#115658)
78251f8e016 Update distro
7e0d8cd80ee Merge pull request #124511 from microsoft/tyriar/color_config
9993eb9d1ae testing: improve support for markdown messages
b168ece8de3 markdown: add nbsp to unescaped sequences
b04c9668927 Fix test resolver with trusted workspaces
dbdc7a259e2 added bottom spacing for table in markdown preview (#124385)
5cbd4bc4691 Fix color of single tab status icon
a8d2a3a87c5 Resolve todos
47b7320c1f4 Show tab prefix before icon is ready
a31d9ca6993 Don't show icon until its resolved
f7f6956554a Share profile property schema
17e82898ed1 Remove show all colors, add settings intellisense
a8e7253de09 fix scroll in table widget #wt fixes #124314
2b9f22631f5 Support terminal link word wrapping (#124514)
cdbf46815c6 update distro
fe1af896d5d Use remote reconnection constants  (#124517)
2b6564c1015 insert toolbar on the left.
df3c2c48755 testing: move apis to stable
b6dad5d1437 Support any theme color
3c2ffadf29c Dynamically generate terminal color css
9eaba8944ff Support colors in terminal profile setting
7a0ce574da6 Fix test output pty usage
777f09d4569 Fix safe config provider fallback to default
d63078aaf04 Merge pull request #124317 from jeanp413/fix-124127
a8397d15299 Merge pull request #124480 from nrayburn-tech/fix-122348
934a4244e27 Remove overrides from editor service (#124375)
b47569400a3 option to hide terminal tabs if there is only a single group fixes #122348
5319757634f Add fallback webviewExternalEndpoint in code
8f11975c47c Close #119722
d6b5df5e199 retry logic for setting password (#124390)
12fa7b04257 Increase timeout for webview focus change
4c4ec402e7e return early
b314536e56a Move find file references into the search group
18296326a9a Set proper context on new cell output toolbar
28767c88f0a Close #122795
cd8bf7ba536 fix zero height output height.
7bc2019b8d5 Updating pinning test
be8745ac9e0 Fixes #123228 (#123584)
6ee883bfa32 Split href before decoding instead of after
6af49913c2a title for notebook label in notebook toolbar
77ff6eb03bc Add image specific link normalizer (#124400)
e9b8c129155 Add types
a03daaf8506 Merge branch 'notebook/dev' into main
4ba27602740 fix #119214.
8afcdfaad8b extract complex options parsing.
9996e32bc9c testing: improvements when running a previously un-run test
6507d05310f freeze layout config.
6cda8d2373d extract configuration update
f38f3bb8e78 Merge pull request #124044 from microsoft/alex/ghost-text
51aa5402d63 Allow single line decorations that are not at the end of the line
06a86116b73 Fix firstHostSegment logic
827dec3a0df Use better logic for getting scheme and avoid extra decoding for authority
44fe867eddd fix tests
c23c9e448e6 Implement dragAndDrop enable setting
021071ff74a Avoid double encoding authority
22dc518a210 Remove unused type
97bbacd8087 Remove extra call to with
82d18a42fa2 testing: fix auto run triggering test multiple times
17f3a69e243 Allow toSide #119725
86cb6d6b337 Close #119725
4d53b454283 Fix local term warning in remote
5ac4f5f5be4 Fix didn't work
af3fbd968c9 Make sure we decode uri path
84f5040b3db Remove unused member
91fdd52d17b Merge remote-tracking branch 'origin/main' into alex/ghost-text
8b709a2f55a testing: provide test IDs in menu contributions, rather than internal elements
231c155d31f Refactors the inline completion feature.
852b70eafed Try fix (#124384)
c5da7f33a70 Fix wsl detection in profiles tests
b6387e477be Tweak output toolbar position
b78754e1e46 fix incorrect links (#124203)
a0d7f6292e9 Remove a few instances of 'vs code' in d.ts
b0683f58a5a fix #124360
9847783f62d Remove uuid from webview resource uris
79dea51e79a Rewrite webview urls to be more url-ish
8a4bf3081a8 update folding on mouse over
70c87f0db9b Fix #124240
adf68a52d56 editors - some type 💄 around setInput
effac5be7f9 drop as-prefix for ICreateCellInfo
8f093359f07 editors - simplify some serialized editor input
8aff8020dae Improve guard against unexpected URI call
82cd4f027ad fix leaking of NotebookCellOutputTextModel and NotebookCellOutputTextModel#_onDidChange, fyi @rebornix
c5b9b6c48c7 Fix missing async
5807530e3ae more jsdoc
85f518b2552 Add `RemoteAuthorityResolver.getCanonicalURI`
c650993dd39 Add `ResolvedOptions.isTrusted`
49e96be2fc1 💄 prefer `readonly` over `public readonly`
1087876df86 Use vendor-prefix for notebook specific mime-types, e.g application/vnd.code.notebook.stdout
045e5d2f568 Store conflicting defaults in storage service (#124366)
fc0b6f5e5ab fixes #122653
8b25f922b6b builtin support image/gif mime type
61aca51a322 consolidate SVGRendererContrib and HTMLRendererContrib - both were the same...
fb6f0d95fad consolidate JSONRenderer and CodeRenderer
103892d1eb4 fix code renderer layouting issues
32a06b9be2c [typescript] add limited description
bbe3b2266b5 allow to signal limited functionality in virtual workspaces
d65dace8ea0 Merge pull request #123351 from nrayburn-tech/fix-77239
b9f20119393 Bump distro
815f217174a jsdoc for factories, some unit tests, https://github.com/microsoft/vscode/issues/123884
8268bd46e7f 💄
375a15f07e9 Merge branch 'main' into notebook/dev
996dfffd637 enforce proposed API for shortTitle proposal, https://github.com/microsoft/vscode/issues/124355
c5637229dda Merge pull request #124289 from microsoft/command/shortTitle
2b959fdadc1  Listen on local interface only (#124350)
494e827e351 expose output item bytes to renderers and provide util functions: asText, asJSON, asBytes, asBlob, fyi @connor4312, https://github.com/microsoft/vscode/issues/123884
100a70731db SVG images are not render in the tooltip (fix #123688)
949f60498ae Merge pull request #124346 from microsoft/ben/pfs-promises
063be236f34 scm do not auto focus input box on iPad
f19843b0a3e editors - some 💄 and tests for workspace trust in openEditors
9086ecd9f08 Renames Suggestion to Completion and cleans up API
a6f7aa5e4c5 handle workspace uris
73c6f34f9ec Do not recognize Debian's .install file as a shell script. Fixes #124295
90b9e04f951 try to use suffix for view type when creating untitled notebook, fyi @brettfo, https://github.com/microsoft/vscode/issues/121974
779f9876bc0 debug: properly read the debug.saveBeforeStart respecting activeEditorMode
79e642a5ddb move and simplify renderer registry
bbc293839d4 declare IRenderMainframeOutput#dispose and adopt it for builtin renderer
55059ffe214 todo
e6dd819bf08 first cut of "bytes only" output items
4b5db9098c2 smoke test - disable failing search test
17459a4abd1 notebooks - add test for NotebookWorkingCopyTypeIdentifier
43b51ce8e76 notebooks - fix type identifier compute
703ca68ea6b fix typo
b8fe2db4392 fileworkingcopymanager2 => fileworkingcopymanager
0e58bef15cd file working copy => stored file working copy
78fbc51ad75 Close #124325
633ea857088 notebook working copy - some cleanup before refactorings
d0c5675f6f2 editors - less group.openEditor usage
e66c62f38a2 Generalize smoke text
89c8f919884 Add smoke test for #124146
4fd4e10e99e Fix #124146?
bfb822e4cf0 fix #124284
0989449a055 Fixes #124127
2f2b6b528d0 testing: show duration for test results, handle state computation better
3e5faf69c14 Remove console.log
9e04a67d125 Switch to use vscode-webview.net as default webview endpoint
acc07bd9591 Mark properties readonly
bf4c7042a3a cell toolbar overlap with notebook toolbar.
f29bd6f18dd Dont autofocus input on ipad Fix #122044
5b0fc94e6af fire event when trust is change in empty window #wt
c1b809ef221 Fix #124307
cd27f1fcb91 update text for loose file button #wt
07a2aab8f2c Remove duplication around checking isRemote
55c2fc5604e add setting and checkbox for untrusted files #wt
d3f040fe017 Fix notebook cell statusbar items duplicating. Cancel tokens on dispose, and dispose the timeout properly
894b7782cce Merge branch 'notebook/dev' into main
9627b4ea63e Emmet identify CDATA for wrap, fixes #123136
97740a7d253 Revert "Revert "Revert "Closes #122433"""
ddf8cc42616 Dispose CKS
4c1474b458d debug: finalize parentSession
514d3162bc8 Persist title source and set after reconnect
604b27db1bf Fixes android screen-keyboard backspace issue.
af0c01b1e36 Short title for command contribution.
18ea5ac15e6 Use isRemote instead of remote authority to determine where to load from
6f2381e33d7 Terminal tab icon API (#124004)
d0cea47ae39 Merge pull request #124194 from microsoft/dev/t-andreamah/outline-reveal-editor-switch-fix
dae2a9d4ebc do not auto focus on ios extensions input and keybindings
6b097212e69 Revert "Revert "Closes #122433""
bd934d89ea0 Use untyped editors for workspace trust
59abb887f6c notebook: address messaging api changes
5b17052a5b3 Fix webview tests
2270c36cff9 Use extension location instead of remote for asWebviewUri
9ffac783be4 Merge branch 'main' into dev/t-andreamah/outline-reveal-editor-switch-fix
22f7f470b69 Apply Logan's suggested changes
0b355ffc89b notebook: fix certain kernels/output not working
f75152cd815 notebook: fix certain kernels/output not working
ab5df442eb3 Merge pull request #123727 from microsoft/dev/t-andreamah/markdown-static-preview-scroll-state
18c254987cd Merge branch 'main' into dev/t-andreamah/markdown-static-preview-scroll-state
2ab6e9cdd26 Debounce invoking the inline suggestions provider
99be6bad750 Add a command to hide the inline suggestions
62bbbcc7bf4 Remove log
875ada9bfad experimentalUseTitleEvent -> titleMode
76154be4d4b Truncate Windows path from sequence, do title handling based on remote OS
8a6cc9cba7c Fix dynamic title for reconnected terminals
74849362b2e Render only one line of ghosted text by default
713d5861404 💄 less casts
1718a6e2ac8 Hide hover on target element(s) click
224b0f22922 Fix category and max-memory option args
5ae8db2ae0e Render the suggest widget above when rendering a multi-line preview
8c194abb5e7 Do not shrink the additional lines once a shorter suggestion is displayed
da4fcc266fc file working copy - avoid ugly casts
aea7c1a3343 Merge pull request #124196 from microsoft/tyriar/dnd_2
e538fd90c0e Hover hover when context menu is shown
4a679df5312 Hide ghosted text when it wants to be displayed in the middle of a line
e91d5475acf Merge remote-tracking branch 'origin/main' into tyriar/dnd_2
c6d2254b2fd Create a `InlineSuggestionsSession` also when showing suggestions
b5a9a026068 Invalidate current suggestion based on cursor position
49339aba513 Only start a session after a content change (with debouncing)
fdbcef0a842 Add `editor.suggest.showSuggestionPreview` to turn on/off inline suggestions
c8410ece147 node-debug@1.44.28
234136b6c28 💄 acceptsNonWorkspaceFiles -> acceptsOutOfWorkspaceFiles
91bf9326334 fixes #123469
2cc3b168fde Do not force the instantiation of the `SuggestWidget`
1543754dcab Tweak loose file dialog warning
669b0b3f719 working copy manager - clean up some types add some new APIs on manager2 for unified access: - get(resource): working copy - workingCopies: workingcopy[] - onDidCreate: Event<working copy>
3234403c5d2 Merge pull request #124191 from microsoft/aeschli/virtualWorkspacesInExtensionView
19574448d0e Fix rendering snippets
5f7cfa3a54e Introduces a GhostTextWidget model to enable data binding.
a6f89f58a9e Workspace trust - empty workspace (#123811)
0c996a39b65 Implement consolidated output toolbar
f583b4b3367 Merge branch 'main' into notebook/dev
29c61570a5b Revert "Closes #122433"
34180ac9bef Remove code allowing multiple ids for a command
35eafb78732 Add sort imports command
e65a227c829 Test using readonly[] syntax in vscode.d.ts
1ddc623e585 Simplify logic for webview resource uris (#123740)
93be0a6fa03 Update simple service
46a1ca78249 notebook: initial renderer communication
1ecba0426a9 Make `reload webviews` support webview-views
b3ed595dde7 Extract isRequestFromSafeContext
39d1a94e86f Allow loading svgs from xhr
4fbd548d72c Merge branch 'main' into dev/t-andreamah/markdown-static-preview-scroll-state
40592a274c9 fix test suite.
4fcc2720826 use custom shield dialog #wt
a65d55e9c48 Strict null fixes in webview
f822083cb70 Check `defaultPrevented` before showing built-in webview context menu
f594bb47e59 removing more unecessary whitespace
41606da2dc0 removing unecessary spaces
920c9a3a0d5 improve banner for virtual workspace
9ee1906718d pr feedback and combining prevEditor info for preview and non-preview
f433b4781a0 Pick up TS 4.3.1-rc
d921cc41fc0 Update markdown grammar
1642d4cd0ad Merge groupBy and groupByNumber utils Fix #123569
c1d6e44262e Avoid listener leak warning due to reusing cancel token for many RPC calls
0d338068034 Add suiteRepeat test util
5b3cf7cc2ae Merge branch 'notebook/dev' into main
c936add6013 hide kernel status bar item if it is already rendered in notebook toolbar.
b8c7d75e465 Avoid illegal line numbers in case of undoing a completion at the end of the file
63348b4a395 Improve contrast
de89605adfe Do not invoke provideInlineSuggestions when just moving the cursor
08f4a36de15 notebook toolbar container display none by default.
6956a38b674 Have the `InlineSuggestionsModel` listen to events directly
26194faa8be fix focus indicator default value.
2fbf0cd977e Respect the suggest widget only when there are suggestions
8c27c1f257b Update list focus highlight color in standaloned editor Refs #123703
0ec51535fa2 Rearrange actual group splits, not just instances
25bdb018483 Add theme key for terminal dnd
15f772fae32 notebook: include script url in back compat patch
b79825e7c4e Clean up
a3e72ce1d06 Reinit dnd observer after reattach
72b01fea379 Avoid selecting accepted text
d7f6d7e735d Fix markdown cell drag indiciator having wrong position in scrolled documents
de1c8ad93a9 Give clearer names and add comment
40a26850575 Fix shift for markdown cell selection only selecting current cell
3c417665643 Fix strict null errors in webview main
b8a0123cfc9 Fallback to fetch if localhost resolve fails
f0ef8dfd913 Add explicit null typings
c63ac2f6388 Use searchParams to get id
c13c6d8e468 Throw error when trying to reload/navigate within a webview
05f83d95d2b Fix issue reporter not debounce submissions (#123340)
8e87fea2f15 Support dragging to unsplit
40fbf5d915b insertToolbarPosition
e071cefa4df Support creating splits in different groups
f1a372c15f8 Support rearranging splits
2b30689ab00 Close #123935
25a12c75c5a use dummy uri
568bb89fadb Merge remote-tracking branch 'origin/main' into tyriar/dnd_2
5266a5fae3f Improved hover feedback
44d135e94f3 Merge branch 'main' into dev/t-andreamah/markdown-static-preview-scroll-state
f4e05837d01 Remove custom height, use default from menu service #123869
134d9b187bb Closes #122433
a796ebfb8b4 update actions column width #wt
f36c7a0860b Terminal dnd feedback
3804c98d6f7 fix padding for table #wt
5442f154ef6 fix issue when not connected to remote #wt
6356613d809 Update according to suggestion
49187c4e785 Replace flush with setFlushOn with loglevel info, fixes #123856
45e5c50dbfd Partially implement terminal drag and drop
283180b64b2 don't show action icons all the time wte
9716c27e068 slightly better uri for untitled notebooks, https://github.com/microsoft/vscode/issues/121974
1256b258a6f Honor the selection suggestion in the suggest widget (when it is visible)
d553c21d5e0 fixes #123869
52c8fced385 focus indicator border or gutter
81c6572671c added default editor override for symbol reveal
9326ded502b show extensions limited due to virtual workspace
b02acf39081 Merge pull request #123738 from microsoft/dev/mjbvz/unify-renderers-api
284c21a588e tweak terminology for wt entries
9a322a0d62a use folder terminology due to windows/linux limit
dc8844925ab Part of #122996
b63ad124d2e mark untitled notebooks as dirty by default, don't hold on to untitled notebooks eagerly, https://github.com/microsoft/vscode/issues/121974
09ab8ad2029 wip
eaf5a49200b status - update description of `name` property
1f912dfa3d5 Fix #123617
ff6d8771c94 fixes #124085
88d9a3aaf5c Support command links in trusted tree hovers Fixes #123723
eb5874237eb Improve task terminal status message Fixes #124062
53b58c89d44 Fix loop in port forwarding
37a11814295 do not include non configured deprecated restricted settings
53352a29540 add API to open an untitled notebook, https://github.com/microsoft/vscode/issues/121974
b7058688ad3 Fixes #124143
a0819ed4fea Add ending period to --sync
faa3146a310 Add ending period fto prof-startup
159479eb5ae Allow to show status bar entries with an id and name (fix #74972)
f23f011f552 untitled - clarify resolve methods
734b79dadae fix #124102
08618458110 fix ExtensionRecommendationsService test (for #124119)
e5bf21393bf Additional navigation keys
99f3a3726eb Additional details in the aria label
06ee4764a4c untitled file working copy - test 💄
1cc2f71a1ff untitled file working copy - tests for new unified manager
8c6db097ac7 untitled file working copy - add new manager that unifies file and untitled working copies
bc37b284431 untitled file working copy - shared dispose handling
0d92cb9dd88 untitled file working copy - poperly resolve target
37fbfa61251 untitled file working copy - set visibility
5835fbc9f1d untitled file working copy - some code 💄
a47fc96766a untitled file working copy - fix tests
1edef157350 untitled file working copy - wire in save support
8173bd132fb untitled file working copy - add workingcopyservice#get
a3ee06b3e03 untitled file working copy - extract common super type for manager
02c72e2bd64 untitled file working copy - extract reusable interfaces
44dec56af8c untitled file working copy - 💄
103ba104a56 untitled file working copy - tests
9f990bbb6ec untitled file working copy - first cut manager
4173ced659c untitled file working copy - first cut
825f6c7ab84 valide URIs created via from, https://github.com/microsoft/vscode/issues/121198
b1349b64a64 update color registry names for inline values
677f2a3be12 remove excess whitespace
0e4159cb7aa fix localization key/description for debugInline colors
df308a9a81b add color customizations for inline debug values
a9c5e37ea0d fix #124102
c5611075cad fix ExtensionRecommendationsService test (for #124119)
501b691dd06 Additional navigation keys
6034e35043e Additional details in the aria label
e878f5a3ee4 Add support for untitled file working copies (#124120)
13aff6aa7d3 untitled file working copy - test 💄
a48180b6e6d valide URIs created via from, https://github.com/microsoft/vscode/issues/121198
f22eb7ee29d untitled file working copy - tests for new unified manager
5f6d4786857 Merge pull request #123065 from nrayburn-tech/120936
2ecf53bf79a untitled file working copy - add new manager that unifies file and untitled working copies
32d4df9b823 untitled file working copy - shared dispose handling
3a1b950c147 Merge branch 'main' into ben/untitled
97518f5e869 Copy testRepeat helper to extension integration tests
721cdd6472b Fix data loss when renaming custom editors (#124057)
bbb89b86f56 remove hover bg color on notebook toolbar icon.
8f140828107 fix mouse click double background
c59f782cc7d adopt table widget for workspace trust editor
616e0fd9927 refactor: polish
4815c9e9954 fix notebook toolbar scrollbar
a069768c9b6 Remove disposing of editor input in override service
0026416a7ea move showDeprecated suggest to be a CompletionOption option
2a9f02348f6 Make notebook toolbar cell visible on click (change notebook.cellToolbarVisibility default)
df93e53dfb6 Merge branch 'notebook/dev' into main
4486788c81c allow the left toolbar to overflow.
d501abe922d contribute actions to the toolbar.
bf9f6837d14 NotebooKernelActionViewItem accepts notebook editor widget.
9063312f9c1 keep ref from cellVM to outputVM for now.
5913c5b070e Merge pull request #124125 from microsoft/tyriar/join_terminals
9b1ba3f31f0 Adds Memento.keys #87110
8b726fc9f51 update color registry names for inline values
25873bb34c4 Adds Uri.from #121198
5c4fae91762 Merge remote-tracking branch 'origin/notebook/dev' into dev/mjbvz/unify-renderers-api
79bd573d9e4 Move OpenIssueReporter api command registration out of extHostApiCommands (#124068)
73cce9a080e Fix vertical terminal margin left/right
e657d422814 debug: expose parent session on DebugSessions
25967171f17 Delay workspace recommendations as remote extensions installations are ongoing For #124119
b84a8c4215a Re-enable selectionNavigation in terminal tabs
84c23ab5bd7 debug: bump node-debug2 version
b3c56f52813 testing: bad rendering of inline decorations for markdown messages
2bc36bec9dc breakpoints select on stop
71f4934a0c6 use enum
21e0fab8b87 Don't show join in command palette
1243a51d59b Support join terminals
4e7029f593b workbench web api: builtinExtensionsFilter
34775b7d660 add requestOpenUris api
fc76d8b6b44 fix #124113
455a8b6949b List focus colors are too dark (Fixes #123703)
aee486cd293 untitled file working copy - poperly resolve target
e02714b5775 Polish for some workspace reuse (#123519)
daaa8a98bf3 debug: focus breakpoint on debug stop
f113243a516 Close and reopen tunnel when protocol changes
960af85cd93 Reduce number of calls to get port attributes
fb9d3f3e501 Fix all ports showing as user forwarded
4726abdcfa8 explorer: do not remove dotes at end of filenames before validation
026e6239be9 Merge pull request #123895 from danielgary/wmic-replacement
8f78655dbe3 untitled file working copy - set visibility
615bb082c11 Tunnel -> Port
0f5ceb2f1db Add context menu for tunnel protocol Fixes #123750
414e5dbf1f8 install additional debuggers only when at least one debugger present
1c6e481373e untitled file working copy - some code 💄
b0272010af8 Disable bell sound completely
f3cca6236e0 remove todos about ipynb cell ids
3f6e29238c5 Show status icon in tooltip
f8054f260ee Merge remote-tracking branch 'origin/main' into alex/ghost-text
2d80cb75c4b Fixes #124038: Render a `<span>` for each `::after` decoration at end of line
cdeaebbd3be Show info terminal statuses in narrow view
3467760399e Merge pull request #123867 from hediet/hediet/fix-123178-leading-ws-in-wrapped-line
71e729d1222 Merge pull request #122785 from tejasvi/patch-1
1b591be32b2 Merge remote-tracking branch 'origin/main' into pr/tejasvi/122785
49ded4d7e11 Fixes #122825: Dispose proxies when the extension host terminates
7c07550dbc5 Log errors encountered during deactivate
e4159c8f892 Add protocol to portsAttributes Part of #123750
b2c32980765 untitled file working copy - fix tests
b94b2d2cf01 untitled file working copy - wire in save support
fe2761a026e untitled file working copy - add workingcopyservice#get
956347c4edc better logic for "notebook open/close, notebook ready when cell-document open event is fired", https://github.com/microsoft/vscode/issues/123655
191ebfabe65 Merge branch 'main' into notebook/dev
2f2f8d7b0f4 untitled file working copy - extract common super type for manager
102433ffbef untitled file working copy - extract reusable interfaces
27d250fa0da Merge branch 'main' into ben/untitled
07cf22f6814 Fix ctrl+enter in code cell editor
45aafeb326d fix #123816
fd7d84a392c Merge branch 'notebook/dev' into main
d51c7f66306 add experiment global toolbar.
079be5f0fd6 remove run all cells constraint
0031e783518 Store tab list width in global storage
e270ff06255 Make default horizontal tabs width 120px
1bd7c329fb2 Move tabs list size constants into const enum
e0ff23866ad 💄
49870fb9fca More accessibility improvements
47c96324ba6 Banner accessibility improvements
7c4a2cb6cc6 Add args to source profile schema
2bf81674ee7 refs #123976
a3fe790a45f Explicitly flush OutputAppender #123856
2c91cc8a7d2 Clean up decorations when hiding ghosted text
ac85998e016 Pipe language edit counts into CES survey (#124006)
22350f3dc54 Change the order for ghost text decorations (use a class name that sorts before)
9916815a187 Merge pull request #124039 from microsoft/tyriar/121278
74372fe5663 Fixes #124038: Render a `<span>` for each `::after` decoration at end of line
a1646e35c36 Remove try catch, clean up
6353aaac13a Share code between dispose instance and remove instance
9719ae6e725 untitled file working copy - 💄
1371a8e0d49 Bulk-edit veto dialog use the correct reason
327690a3cb9 Unsplit terminals
32db232a53a Scaffold ghost text
63b6e6c51d7 untitled file working copy - tests
45769b83189 debug issues assign to Andre
f2640c349b0 untitled file working copy - first cut manager
38dda41eaa0 Merge pull request #123474 from microsoft/tyriar/local_wording
e8dbf0cc9a1 Improve wording, separate for remote and virtual
befed354684 Merge remote-tracking branch 'origin/main' into tyriar/local_wording
509926497c8 sandbox - make CLI commands a native host thing (#123899)
dc85211b159 untitled file working copy - first cut
a6db2795e36 Fix elevateIfNeeded port attribute Fixes microsoft/vscode-remote-release#5065
736896527ce Improve npm trust message
d4ca8b7f3a3 icon contribution: add requires (for #117437)
b2273e80745 Merge remote-tracking branch 'origin/main' into main
d8b70e74a88 cleanup link styling
46596757d41 fix icon contribution id validation (for #117437)
9ef2514d701 Merge branch 'main' into pr/121835
aad39f1ea63 untitled editor names 💄
7320c8514c9 status bar - fix compile errors
381e7c2d0bc status bar - use secondary priority as sorting criteria (#123827)
da374067139 state service - do not log expected file not found error
82767cc1d7b add aria description for workspace trust editor refs #122537
cfa977755b1 fixes #122537
5a5d1bc91f8 Add provider label in auth menus (#123922)
ff59c24225a fix #123709
87476adaee7 Merge pull request #123919 from jeanp413/fix-123892
217261cf739 Mitigate #123856
055319001c6 Fixes #123892
802ba30de2e allow managing workspace trust from extension icon
f3277a1e1e9 fix markdown editor position for compact view.
f0e57a781af fix #123819.
12f273e3e07 fix #121056.
6d79421b349 Merge branch 'notebook/dev' into main
7b9bb17ce56 refresh styles after kernel is changed.
e5c7b899cf1 compact view.
d0b6c2d2276 fixes #123858
40d5e6796fb fix #123700.
baccddcd459 Use Windows mode if build # is <= 19041 (#123725)
dcfdc8d2e4e Merge pull request #123429 from jeanp413/file-drop-terminal-tab
18313e82b00 update markdown folding icon padding
fcde284705f Merge pull request #123246 from vibhavsarraf/terminal_link_normalize_path
109f7feb3b0 Trim leading ../ or ./ from quick access query
4e79908dcff Merge remote-tracking branch 'origin/main' into pr/vibhavsarraf/123246
42b1e81d5d5 Merge remote-tracking branch 'origin/main' into pr/vibhavsarraf/123246
e5f3dd9ef82 simplify default view styles.
f4691de9552 remove legacy comments.
1ccd6a07946 Merge pull request #123910 from jeanp413/fix-123891
36e2b3176ee Update distro
c492f13efc4 xterm@4.13.0-beta.1
dff22a07121 Fix double border on vertical splits
c33420d9872 Fixes #123891
8c0ba0b5d79 [remote menu] add command Install Additional Remote Development Extensions. Fixes #123905
6510b614c10 Consistent casing for  `Install Additional ...` quick pick entries
22d7f210f79 Fix full path flashing in terminal tab
4946fee0dd1 Alt+click to split single tab
f8a3cef533f debug colors: compress css selectors
828e83defca Merge pull request #123726 from suzmue/hoverText
0f7439bf2e7 Middle click to kill single tab
09b77ba6d8b added comment and removed empty lines
89b4b6c90d1 Replaced wmic call with windows-process-tree
c6525283099 Remove dialog in ChangeLocalPortAction Part of microsoft/vscode-remote-release#4958
c8b4656197f Add requireLocalPort property to portsAttributes Fixes microsoft/vscode-remote-release#4958
6aec850c759 Multiroot workspaces on Windows with forward slashes are treated as relative paths. Fixes #123871
27966a2521d Merge pull request #123833 from gjsjohnmurray/fix-123831
b540874d21d Incorporate task terminal status feedback
67133f048d5 Add tooltips to task status Fixes #123730
5446…

* chore(deps): fixup lockfiles

* chore: restore .gitignore

* fix(vscode): redo extra extension paths

* fix(vscode): add setSocket to PersistentProtocol

* fix(vscode): restore server files

* fix(vscode): restore typings

* fix(vscode): restore proxy_agent.ts symlink

* fix(vscode): use ptyHost.getEnv

* fix(vscode): uriTransformer refactoring

* fix(vscode): add new terminal listener

* fix(vscode): fix + enable layering lint

* chore: format file

* Squashed 'lib/vscode/' changes from 2064d4c301c..b4c1bd0a9b0

b4c1bd0a9b0 Merge pull request #125817 from microsoft/aeschli/125786
33d504f8455 clarify nls comment
d5fbc9f45fa fix localization strings with `command:`. For  #125786
f8b576c274b trust the empty window by default (#125788)
c5e845182bf Dont use exp service for choosing first content behaviour (#125780)
78429fb8736 Use interpolation to keep special syntax out of strings to be translated (#125790)
47c2272a70d candy/125576 (#125787)
1e7b9242e89 Merge pull request #125773 from microsoft/roblou/fix122768
134cc8b7711 Update values for keybinding query context to match real keybindings. Fix #122768
26317e8dccd fixes #125722 (#125768)
629091038fc allow a 3rd character for first part of language id (#125761)
5e6379fd7a9 Merge pull request #125741 from microsoft/tyriar/r157_125729
098c99e2237 Set terminal title in ctor for custom pty terminals
c7119ae8b63 Merge pull request #125679 from microsoft/isidorn/fixRunMenu
0ef242cb5cc Merge pull request #125728 from microsoft/joh/fix/125716
c188ea91a64 make sure to transform notebook data metadata
e27b85b9958 fix #125702 (#125703)
008c3ecf4cd Port fix for git diff paths in webviews to 1.57 (#125704)
c926ecf021a Clone object before applying migrated setting (#125696)
6d4a8af5cfc Hide terminal menu if no process support is registered
2c9833b549d better context key for run menu
bf84ee619e0 #125527 (#125651)
2c4bd4f2b3c Merge pull request #125654 from microsoft/hediet/reduce-flickering-of-inline-completions
2e9321da48b Merge pull request #125657 from microsoft/hediet/adjust-inline-completions-color
b915673f7b2 Fix #125569 (#125650)
1c5f331fa08 Merge pull request #125653 from microsoft/hediet/fix-no-focus-after-accept
9bde5523814 Adjusts inline completions color. Fixes #125646.
7b724945310 Reduces flickering of inline completions & fixes context key.
5ba2e425f31 Fixes #125524 by focusing editor after commit.
6cdc6160057 Merge pull request #125649 from microsoft/joh/fix/125550
b3d2cd902b7 re-throw and dispose reference when resolving failed
dcc182fe3d2 Revert ESBuild updates and fix #125518 (#125574)
bdafbc3b5f2 Merge pull request #125552 from microsoft/roblou/disableRunToolbar
ce8505d5580 Add "hostRequirements" to schema (microsoft/vscode-remote-release#5144)
de98ebbc81e only show notification once per window reload (#125548)
31a11d3b786 Disable consolidated run button by default. Fix #125544

git-subtree-dir: lib/vscode
git-subtree-split: b4c1bd0a9b03c749ea011b06c6d2676c8091a70c

* fix(lib/vscode): restore product.json

* fix(vscode): backport resources hotfix

* refactor(lib/vscode): reorganize code to fit vs rules

* fix(ci): remove stray symlinks

* cleanup(lib/vscode): format .gitignore

* chore(vscode): fix formatting

* refactor(vscode): remove parsePathArg in envService

* fix(vscode): add missing terminal commands

* fix(vscode): update .eslintignore paths

* chore: document uriTransformer hacks

* fix(lib/vscode): restore patches

* fix(lib/vscode): restore more patches

* Squashed 'lib/vscode/' changes from b4c1bd0a9b0..507ce72a446

507ce72a446 Merge pull request #126577 from microsoft/sandy081/recovery/fix125970
3f4baf46c6f move focus check while converting
d95f6de445f - migrate only from active window - respect old value while reading
08bca485860 Fix race that causes auto port forwarding setting to be ignored (#126481)
2650c2e51d3 Merge pull request #126413 from microsoft/inline-suggest-prevent-auto-suggest
45c13db2195 Do not auto-trigger suggest when typing exactly the inline suggestion
20a512db915 Fix #126178; fixes markdown scrolling bug
3300069a2b7 separated editor scroll info by type and consume entry on access
92c259a77f5 Update package.json (#126283)
d21d7d9d3e8 Port fix #126057 (#126215)
d9b1d6b8c17 Merge pull request #126234 from microsoft/tyriar/157_125985
a16b9181915 Pass config to external terminal service
6bca69fc6fb macos - restore Cmd+W to close window when no editors opened (#126045)
b9f4ab00ba8 linux - restore `--no-sandbox` for startup scripts (#126028)
ca66517cf90 Revert back to Electron `12.0.7` (#126026)
6370d95598d Set visibility of markdown cells before rendering it (#126099)

git-subtree-dir: lib/vscode
git-subtree-split: 507ce72a4466fbb27b715c3722558bb15afa9f48

* fmt(docs): remove trailing whitespace

* fix(test): fix e2e tests

* chore(deps): update vulnerable vscode deps

* fix(test): clean up terminal test

* Retry menu navigation in e2e tests

* Update VS Code loader with trusted types policy

* Update build resources with renamed file

* Restore proposed API patch

Without this it is impossible to enable the proposed API for extensions.

To replicate the issue run a build or search for enableProposedApiForAll
and set it to false (it is set to true during development) then try
running an extension that uses the proposed API like the GitHub pull
request extension and look for an error in the browser console.

* Restore async storage write patch

This issue can be reliably replicated by creating an extension with the
following code:

await context.globalState.update("key", "value")
vscode.commands.executeCommand("workbench.action.reloadWindow");

If you do this the global state will never update. This can be seen by
logging with a notification or browsing the global state manually.

This is probably a bug with upstream because without this patch it is
impossible to wait for the actual storage write.

This actually required more patching than we previously had; I don't
think it was working in 1.56 either.

* Remove duplicate telemetry service registration

We no longer comment out the telemetry service in the workbench so ours
is redundant.

- logTelemetry call was slightly wrong (uses an object rather than an
  array)
- No longer need the telemetry channel since the default uses the
  extension environment channel.
- No longer need disableTelemetry since we don't create the setting.
  This does mean the setting is not toggled off when the disable flag is
  set (it does of course still prevent telemetry) but that appears to be
  the same with upstream.

* Use service in terminal channel instead of interface

This allows us to avoid checking whether some functions exist when we
know they will. This means we can't use this for other pty services like
the browser one but that won't be necessary as this strictly runs on the
Node end anyway.

* Rename uri transformer using camel case

* Update yarn.lock

I got changes when I ran yarn so I reverted to 1.57 then ran yarn again
and here is the result.

* Restore .yarnrc patch

Delete .yarnrc and update the build process where that file is read
since it no longer exists.

This should resolve the issues we keep having with mismatched Node
versions. This can be consistently replicated by spinning up a new
environment (no previous modules or cache), running yarn, then running
yarn watch.

Also use process.versions.node instead of process.version as the latter
has an extra v at the beginning.

* Remove gulp-tar dependency

It's pulling in a security vuln and we don't need it anyway.

* Cancel current menu navigation on retry

* chore(docs): update docs with patches

* chore(ci): increase timeout to 15 minutes

Co-authored-by: Asher <ash@coder.com>
2021-07-14 00:39:20 +05:30
Joe Previte
cc50e7f72b
Merge pull request #3771 from cdr/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.28.3
chore(deps-dev): bump @typescript-eslint/eslint-plugin from 4.28.2 to 4.28.3
2021-07-13 10:56:31 -07:00
Joe Previte
174d9a7b31
Merge pull request #3770 from cdr/dependabot/npm_and_yarn/typescript-eslint/parser-4.28.3
chore(deps-dev): bump @typescript-eslint/parser from 4.28.2 to 4.28.3
2021-07-13 10:56:06 -07:00
Asher
862c977dc8
Make installer work on any os/arch and add installer tests (#3712) 2021-07-13 12:47:16 -05:00
Asher
4ffecd641d
Check for bashisms in install script 2021-07-13 12:28:40 -05:00
Asher
3339853c26
Avoid root when prefix is writable
Previously if the prefix was non-existent we would switch to root even
if the user does have the permissions to create the directory.

Fixes #3585
2021-07-13 12:22:06 -05:00
Asher
6045fdd3ac
Make installer work on any os/arch 2021-07-13 12:22:05 -05:00
Asher
24f6834f5b
Add installer unit tests 2021-07-13 12:22:00 -05:00
Asher
c31e72fb7b
Add installer integration tests 2021-07-13 12:21:34 -05:00
dependabot[bot]
f4eba6da46
chore(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.28.2 to 4.28.3.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.3/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-13 11:02:00 +00:00
dependabot[bot]
0777d5ea04
chore(deps-dev): bump @typescript-eslint/parser from 4.28.2 to 4.28.3
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.28.2 to 4.28.3.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.3/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-13 11:01:49 +00:00
Joe Previte
723a2745f6
Merge pull request #3769 from cdr/jsjoeio-chore-cleanup
refactor: clean up testing files
2021-07-12 17:19:41 -07:00
Joe Previte
fc16f7e06d
refactor: clean up testing files 2021-07-12 17:05:44 -07:00
Joe Previte
a5cf01840a
Merge pull request #3751 from cdr/jsjoeio-fix-type-confusion
fix: check uri.path is string in pathToFsPath
2021-07-12 16:40:36 -07:00
Joe Previte
7ce9ee0db6
fix: check path is string in pathToFsPath
There's a chance this function can be called with a path that is not a string.

To catch that, we check if path is of a different type and throw an error if it
is.

This also adds a couple tests for this function.
2021-07-12 16:39:42 -07:00
Katie Horne
c14500849b
Merge pull request #3756 from cdr/docs-edits
refactor(docs): clean up and restructure
2021-07-12 17:26:52 -05:00
Katie Horne
66b6590e36 refactor(docs): clean up and restructure 2021-07-12 14:03:09 -05:00
Joe Previte
a96e16e593
Merge pull request #3767 from cdr/dependabot/npm_and_yarn/ts-node-10.1.0
chore(deps-dev): bump ts-node from 10.0.0 to 10.1.0
2021-07-12 10:45:42 -07:00
Joe Previte
8c2661b946
Merge pull request #3766 from cdr/dependabot/npm_and_yarn/ws-7.5.3
chore(deps): bump ws from 7.5.2 to 7.5.3
2021-07-12 10:45:15 -07:00
Joe Previte
58f4884c85
Merge pull request #3759 from cdr/jsjoeio-document-password-limit
docs(faq): add line about password login limits
2021-07-12 10:05:31 -07:00
dependabot[bot]
ec9ddd59c8
chore(deps-dev): bump ts-node from 10.0.0 to 10.1.0
Bumps [ts-node](https://github.com/TypeStrong/ts-node) from 10.0.0 to 10.1.0.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v10.0.0...v10.1.0)

---
updated-dependencies:
- dependency-name: ts-node
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 11:02:27 +00:00
dependabot[bot]
8fe31dfbf8
chore(deps): bump ws from 7.5.2 to 7.5.3
Bumps [ws](https://github.com/websockets/ws) from 7.5.2 to 7.5.3.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.5.2...7.5.3)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 11:01:57 +00:00
Joe Previte
fd042107b2
docs(faq): add line about password login limits 2021-07-09 12:16:53 -07:00
Joe Previte
2a5f5e4e18
Merge pull request #3753 from cdr/dependabot/npm_and_yarn/types/pem-1.9.6
chore(deps-dev): bump @types/pem from 1.9.5 to 1.9.6
2021-07-08 15:08:17 -07:00
Joe Previte
dafa95bfa1
Merge pull request #3752 from cdr/dependabot/npm_and_yarn/types/node-14.17.5
chore(deps-dev): bump @types/node from 14.17.1 to 14.17.5
2021-07-08 15:07:56 -07:00
dependabot[bot]
72d5a26388
chore(deps-dev): bump @types/pem from 1.9.5 to 1.9.6
Bumps [@types/pem](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pem) from 1.9.5 to 1.9.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pem)

---
updated-dependencies:
- dependency-name: "@types/pem"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-08 21:29:03 +00:00
dependabot[bot]
3db019d6b9
chore(deps-dev): bump @types/node from 14.17.1 to 14.17.5
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.17.1 to 14.17.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-08 21:28:42 +00:00
Joe Previte
343cec5159
Merge pull request #3749 from cdr/fix-dependabot-node
fix(dependabot): ignore major updates for node
2021-07-08 14:20:35 -07:00
Joe Previte
632f980bae
fix(dependabot): ignore updates for node 16.x 2021-07-08 14:05:46 -07:00
Joe Previte
15d256b429
Merge pull request #3743 from cdr/jsjoeio-add-tests-vscode
feat: add more tests for browser/pages/vscode
2021-07-08 13:35:53 -07:00
Joe Previte
8e75d320ff
Merge pull request #3726 from cdr/jsjoeio-docs-nginx
docs(guide): add note about configuration for NGINX
2021-07-08 13:34:45 -07:00
Joe Previte
66dc4cc0dc
feat: add setBodyBackgroundToThemeBackgroundColor
This refactors some logic in src/browser/pages/vscode.ts
related to setting the background color of the body
to the editor background theme color.
2021-07-08 11:24:04 -07:00
Joe Previte
197bccc7cd
Merge pull request #3745 from cdr/dependabot/npm_and_yarn/types/browserify-12.0.37
chore(deps-dev): bump @types/browserify from 12.0.36 to 12.0.37
2021-07-08 10:00:52 -07:00
dependabot[bot]
5181ac6912
chore(deps-dev): bump @types/browserify from 12.0.36 to 12.0.37
Bumps [@types/browserify](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/browserify) from 12.0.36 to 12.0.37.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/browserify)

---
updated-dependencies:
- dependency-name: "@types/browserify"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-08 11:54:48 +00:00
Joe Previte
71a8f9a103
Merge pull request #3733 from cdr/dependabot/npm_and_yarn/types/split2-3.2.1
chore(deps-dev): bump @types/split2 from 3.2.0 to 3.2.1
2021-07-07 12:01:25 -07:00
dependabot[bot]
00f319e4db
chore(deps-dev): bump @types/split2 from 3.2.0 to 3.2.1
Bumps [@types/split2](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/split2) from 3.2.0 to 3.2.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/split2)

---
updated-dependencies:
- dependency-name: "@types/split2"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 18:45:16 +00:00
Joe Previte
47afa15ece
Merge pull request #3732 from cdr/dependabot/npm_and_yarn/types/js-yaml-4.0.2
chore(deps-dev): bump @types/js-yaml from 4.0.1 to 4.0.2
2021-07-07 11:42:53 -07:00
Joe Previte
a465af18dc
Merge pull request #3742 from cdr/jsjoeio-fix-missing-dep
revert: add eslint-import-resolver-alias as dependency
2021-07-07 11:42:31 -07:00
Joe Previte
9fdf049ecc
revert: add eslint-import-resolver-alias as dependency 2021-07-07 11:10:53 -07:00
Joe Previte
876a800753
Merge pull request #3739 from cdr/dependabot/npm_and_yarn/types/semver-7.3.7
chore(deps-dev): bump @types/semver from 7.3.6 to 7.3.7
2021-07-07 10:33:18 -07:00
Joe Previte
5471f14c2f
Merge pull request #3740 from cdr/dependabot/npm_and_yarn/types/compression-1.7.1
chore(deps-dev): bump @types/compression from 1.7.0 to 1.7.1
2021-07-07 10:33:09 -07:00
Joe Previte
23b296d550
Merge pull request #3735 from cdr/dependabot/npm_and_yarn/types/body-parser-1.19.1
chore(deps-dev): bump @types/body-parser from 1.19.0 to 1.19.1
2021-07-07 10:31:09 -07:00
Joe Previte
722426856c
Merge pull request #3729 from cdr/jsjoeio-remove-unused-deps
chore: remove unused dependencies
2021-07-07 10:20:05 -07:00
dependabot[bot]
043d5abcaa
chore(deps-dev): bump @types/compression from 1.7.0 to 1.7.1
Bumps [@types/compression](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/compression) from 1.7.0 to 1.7.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/compression)

---
updated-dependencies:
- dependency-name: "@types/compression"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 17:16:17 +00:00
dependabot[bot]
5f4d0713bf
chore(deps-dev): bump @types/semver from 7.3.6 to 7.3.7
Bumps [@types/semver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/semver) from 7.3.6 to 7.3.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/semver)

---
updated-dependencies:
- dependency-name: "@types/semver"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 17:15:50 +00:00
dependabot[bot]
5141543cd9
chore(deps-dev): bump @types/body-parser from 1.19.0 to 1.19.1
Bumps [@types/body-parser](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/body-parser) from 1.19.0 to 1.19.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/body-parser)

---
updated-dependencies:
- dependency-name: "@types/body-parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 17:14:56 +00:00
Joe Previte
17816bb3bd
Merge pull request #3734 from cdr/dependabot/npm_and_yarn/types/http-proxy-1.17.7
chore(deps-dev): bump @types/http-proxy from 1.17.6 to 1.17.7
2021-07-07 10:11:59 -07:00
Joe Previte
9dfc72de1d
Merge pull request #3731 from cdr/dependabot/npm_and_yarn/types/express-4.17.13
chore(deps-dev): bump @types/express from 4.17.12 to 4.17.13
2021-07-07 10:11:13 -07:00
dependabot[bot]
ae1839a140
chore(deps-dev): bump @types/http-proxy from 1.17.6 to 1.17.7
Bumps [@types/http-proxy](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/http-proxy) from 1.17.6 to 1.17.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/http-proxy)

---
updated-dependencies:
- dependency-name: "@types/http-proxy"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 11:02:38 +00:00
dependabot[bot]
60ef5b5cf2
chore(deps-dev): bump @types/js-yaml from 4.0.1 to 4.0.2
Bumps [@types/js-yaml](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/js-yaml) from 4.0.1 to 4.0.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/js-yaml)

---
updated-dependencies:
- dependency-name: "@types/js-yaml"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 11:02:14 +00:00
dependabot[bot]
3777d569e9
chore(deps-dev): bump @types/express from 4.17.12 to 4.17.13
Bumps [@types/express](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/express) from 4.17.12 to 4.17.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/express)

---
updated-dependencies:
- dependency-name: "@types/express"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 11:02:07 +00:00
Joe Previte
0b072e771e
chore: remove unused dependencies and clean up test deps 2021-07-06 16:38:45 -07:00
Joe Previte
6f7ae29dc4
Merge pull request #3728 from cdr/jsjoeio-fix-open-folder-explorer-panel
fix: openFolder button on Explorer panel
2021-07-06 15:02:29 -07:00
Joe Previte
990414cae1
fix: openFolder by using command ID for Explorer 2021-07-06 14:05:27 -07:00
Joe Previte
2540b0d02c
docs(guide): add note for exposing address NGINX 2021-07-06 12:53:53 -07:00
Joe Previte
102f8117b7
Merge pull request #3724 from cdr/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.28.2
chore(deps-dev): bump @typescript-eslint/eslint-plugin from 4.28.1 to 4.28.2
2021-07-06 12:43:48 -07:00
Joe Previte
dc39da1638
Merge pull request #3723 from cdr/dependabot/npm_and_yarn/typescript-eslint/parser-4.28.2
chore(deps-dev): bump @typescript-eslint/parser from 4.28.1 to 4.28.2
2021-07-06 12:42:38 -07:00
dependabot[bot]
d4accfe806
chore(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.28.1 to 4.28.2.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.2/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-06 17:08:29 +00:00
dependabot[bot]
05134e419b
chore(deps-dev): bump @types/tar-stream from 2.2.0 to 2.2.1 (#3725)
Bumps [@types/tar-stream](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/tar-stream) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/tar-stream)

---
updated-dependencies:
- dependency-name: "@types/tar-stream"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-06 22:36:07 +05:30
Joe Previte
d2f11b7fcd
Merge pull request #3719 from cdr/dependabot/npm_and_yarn/eslint-7.30.0
chore(deps-dev): bump eslint from 7.29.0 to 7.30.0
2021-07-06 09:54:09 -07:00
dependabot[bot]
1dfbf9a00b
chore(deps-dev): bump @typescript-eslint/parser from 4.28.1 to 4.28.2
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.28.1 to 4.28.2.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.2/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-06 13:06:24 +00:00
dependabot[bot]
a1e5d39919
chore(deps): bump ws from 7.5.1 to 7.5.2 (#3716)
Bumps [ws](https://github.com/websockets/ws) from 7.5.1 to 7.5.2.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.5.1...7.5.2)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-06 18:34:21 +05:30
dependabot[bot]
ac4ef818b5
chore(deps-dev): bump @types/tar-fs from 2.0.0 to 2.0.1 (#3717)
Bumps [@types/tar-fs](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/tar-fs) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/tar-fs)

---
updated-dependencies:
- dependency-name: "@types/tar-fs"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-06 18:33:56 +05:30
dependabot[bot]
c8bcfade7f
chore(deps-dev): bump @types/ws from 7.4.5 to 7.4.6 (#3718)
Bumps [@types/ws](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ws) from 7.4.5 to 7.4.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ws)

---
updated-dependencies:
- dependency-name: "@types/ws"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-06 18:33:28 +05:30
dependabot[bot]
83674c524d
chore(deps-dev): bump eslint from 7.29.0 to 7.30.0
Bumps [eslint](https://github.com/eslint/eslint) from 7.29.0 to 7.30.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.29.0...v7.30.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-05 11:01:54 +00:00
Joe Previte
d29391ae75
Merge pull request #3714 from cdr/jsjoeio-add-login-test
feat(test): check login.ts when base missing
2021-07-02 15:14:18 -07:00
Joe Previte
7ad536b5e9
feat(test): check login.ts when base missing 2021-07-02 14:57:16 -07:00
Joe Previte
b365830388
Merge pull request #3713 from cdr/jsjoeio-test-emitter
feat(test): try calling .dispose() x2 in emitter
2021-07-02 14:44:58 -07:00
Joe Previte
f3c4dcd074
feat(test): try calling .dispose() x2 in emitter 2021-07-02 14:27:12 -07:00
Joe Previte
58514c422f
Merge pull request #3711 from cdr/jsjoeio-fix-link
chore: fix broken link in install.sh
2021-07-02 13:15:08 -07:00
Joe Previte
002fa08222
chore: fix broken link in install.sh 2021-07-02 11:14:36 -07:00
Joe Previte
f8a1a1ce02
Merge pull request #3707 from cdr/jsjoeio-fix-alpine-install-script
fix: update install script for alpine
2021-07-02 10:45:14 -07:00
Joe Previte
908b2c8502
fix: use new docs links in install script 2021-07-02 10:29:49 -07:00
Joe Previte
5a6af17725
fix: modify install script for alpine 2021-07-01 15:50:31 -07:00
Joe Previte
1ff09b814e
Merge pull request #3706 from cdr/jsjoeio-update-docs-node-issues
docs(install): add troubleshooting node issues
2021-07-01 15:36:36 -07:00
Joe Previte
4ca4a26bec
docs(install): add troubleshooting node issues 2021-07-01 15:21:55 -07:00
Joe Previte
ad92287d7e
Merge pull request #3697 from cdr/jsjoeio-doc-env-requirements
docs(guide): add WebSockets to requirements
2021-07-01 14:50:53 -07:00
Joe Previte
975dd13d12
Merge pull request #3695 from cdr/jsjoeio-sanitize-error-msg
fix: escape error.message on login failure
2021-07-01 14:50:32 -07:00
Joe Previte
c0e123a801
fix(http): escape req.query.to in replaceTemplates 2021-07-01 10:43:37 -07:00
Joe Previte
2ba03c3424
docs: clarify redirect function in http.ts usage 2021-07-01 10:43:37 -07:00
Joe Previte
2092f82270
fixup! fix: escape error.message on login failure 2021-07-01 10:43:37 -07:00
Joe Previte
22a22a8f7a
fix: escape error.message on login failure 2021-07-01 10:43:37 -07:00
Joe Previte
c505fc45a8
feat: add escapeHtml function
This can be used to escape any special characters in a string with HTML before
sending from the server back to the client. This is important to prevent a
cross-site scripting attack.
2021-07-01 10:43:36 -07:00
Joe Previte
b009ad0633
docs(guide): add WebSockets to requirements 2021-07-01 10:37:32 -07:00
Joe Previte
faa896c12c
Merge pull request #3698 from cdr/jsjoeio-fix-argon-issue
fix(isHashMatch): check that hash starts with $
2021-07-01 10:33:29 -07:00
Joe Previte
4dcf3efeab
Merge pull request #3700 from cdr/jsjoeio-add-job-timeouts
fix: add timeouts to CI jobs
2021-07-01 09:59:52 -07:00
dependabot[bot]
bb1b129a24
chore(deps-dev): bump typescript from 4.3.4 to 4.3.5 (#3702)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.3.4 to 4.3.5.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.3.4...v4.3.5)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-01 21:20:43 +05:30
Joe Previte
8695c874ed
fix: add timeouts to ci jobs 2021-06-30 15:16:55 -07:00
Joe Previte
7f12fab3ca
fix(isHashMatch): check that hash starts with $
Previously, we used argon2 to verify the hash with the password.

If the hash didn't start with a $, then it would enter the catch block.

Now we check the hash before trying to verify it and we also throw an Error if
the verify fails.

This makes the isHashMatch function more robust.
2021-06-30 15:00:21 -07:00
CoderErik
e9d4f877f9
Update links to careers page (#3696) 2021-06-30 11:14:04 -05:00
Ben Potter
d2f0e1738d
Merge pull request #3691 from cdr/bpmct/readme-fix
docs: fix relative link to guide
2021-06-29 16:57:13 -04:00
Joe Previte
df814aa39a
Merge pull request #3692 from elliott-king/patch-1
Fix broken link on docs site
2021-06-29 13:52:37 -07:00
Elliott King
33dbb7b707
Fix broken link on docs site
Links don't work on docs site unless they have md formatting.
2021-06-29 16:43:57 -04:00
Ben Potter
f194c14e6c
docs: fix relative guide link 2021-06-29 14:36:25 -04:00
Bruno Quaresma
6dbabc0951
docs: Update README to point to code-server docs site (#3684) 2021-06-29 15:25:22 -03:00
Asher
f92cbb7470
Merge pull request #3664 from code-asher/parallel-tests 2021-06-29 12:24:55 -05:00
Asher
2238d7391e
Fix occasional logout failure
It seems a dialog sometimes appears asking if you want to lose
changes (even though we have no changes; it seems based on timers in
some way). Playwright defaults to dismissing them (so quickly you might
not even see them) so accepting instead fixes navigation to the logout
page getting canceled.
2021-06-29 12:06:48 -05:00
Asher
43c6ffcb8f
Remove login steps from logout test
I figure login is already tested so we can skip this and just use the
cookie.
2021-06-29 12:06:47 -05:00
Asher
49c7cc6e8a
Retain failed e2e videos only 2021-06-29 12:06:46 -05:00
Asher
f2fa7701a9
Centralize credential handling
My thinking is that this may reduce the cognitive overhead for
developers writing new test suites.

This also allows us to perform different setup steps (like ensuring the
editor is visible when authenticated).
2021-06-29 12:06:45 -05:00
Asher
da4de439e0
Spawn a code-server instance for each test suite
This uses the current dev build by default but can be overidden with
CODE_SERVER_TEST_ENTRY (for example to test a release or some other
version).

Each instance has a separate state directory. This should make
parallelization work.

This also means you are no longer required to specify the password and
address yourself (or the extension directory once we add a test
extension). `yarn test:e2e` should just work as-is.

Lastly, it means the tests are no longer subject to yarn watch randomly
restarting.
2021-06-29 12:06:38 -05:00
Asher
49c44818d9
Move onLine to utilities
This way it can be used by the tests when spawning code-server on a
random port to look for the address.
2021-06-29 12:04:31 -05:00
Asher
add55ecd62
Import utils as a group in tests
This should simplify testing new utils a bit.
2021-06-29 12:03:38 -05:00
Asher
ba0364a522
Run each e2e test in a new workspace
The workspaces also have settings to prevent the welcome page from
appearing.
2021-06-29 12:03:37 -05:00
dependabot[bot]
4a47ce774d
chore(deps-dev): bump @typescript-eslint/parser from 4.28.0 to 4.28.1 (#3688)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.28.0 to 4.28.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-29 21:34:51 +05:30
dependabot[bot]
4131b3fb05
chore(deps-dev): bump @typescript-eslint/eslint-plugin (#3689)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.28.0 to 4.28.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-29 18:04:19 +05:30
dependabot[bot]
7e32b8fb86
chore(deps): bump ws from 7.4.6 to 7.5.1 (#3690)
Bumps [ws](https://github.com/websockets/ws) from 7.4.6 to 7.5.1.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.4.6...7.5.1)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-29 18:02:12 +05:30
Joe Previte
e1d291e59c
Merge pull request #3658 from cdr/jsjoeio/migrate-parcel
chore(dev): migrate away from parcel and replace with browserify
2021-06-28 12:04:10 -07:00
Joe Previte
6e1455da88
feat: add custom codecov 2021-06-28 11:41:48 -07:00
Joe Previte
b597519ab5
feat(test): add tests for src/browser/login 2021-06-28 11:41:48 -07:00
Joe Previte
be7ea8f3f7
refactor: migrate parcel to browserify
This also refactors a couple CSS stylesheets to be referenced directly in the
HTML files.

And it removes any CSS imports from src/browser files.
2021-06-28 11:41:45 -07:00
Joe Previte
df01808d4d
Merge pull request #3640 from cdr/jsjoeio/add-test-nlsConfig
refactor: add func and tests for getNlsConfiguration
2021-06-28 11:40:43 -07:00
Joe Previte
a7a6d7e22a
Merge pull request #3659 from cdr/jsjoeio/update-android-docs
docs(termux): add backspace workaround for android
2021-06-28 10:05:46 -07:00
Joe Previte
a355012560
Merge pull request #3660 from cdr/jsjoeio/docs-update-changelog-process
docs(MAINTAINING): update changelog process
2021-06-28 10:04:51 -07:00
dependabot[bot]
95536fafa9
chore(deps-dev): bump prettier from 2.3.1 to 2.3.2 (#3679)
Bumps [prettier](https://github.com/prettier/prettier) from 2.3.1 to 2.3.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.3.1...2.3.2)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-28 22:07:28 +05:30
dependabot[bot]
9042bbae9a
chore(deps-dev): bump prettier-plugin-sh from 0.6.1 to 0.7.1 (#3680)
* chore(deps-dev): bump prettier-plugin-sh from 0.6.1 to 0.7.1

Bumps [prettier-plugin-sh](https://github.com/rx-ts/prettier) from 0.6.1 to 0.7.1.
- [Release notes](https://github.com/rx-ts/prettier/releases)
- [Changelog](https://github.com/rx-ts/prettier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rx-ts/prettier/compare/prettier-plugin-sh@0.6.1...prettier-plugin-sh@0.7.1)

---
updated-dependencies:
- dependency-name: prettier-plugin-sh
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: reformat shell scripts

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Akash Satheesan <akash.satheesan@protonmail.com>
2021-06-28 22:06:55 +05:30
Bruno Quaresma
7912809af1
docs: move README into docs
Move README into docs
2021-06-28 11:27:17 -03:00
Bruno
010c1d8f2f Fix README path on build-release 2021-06-28 14:16:20 +00:00
Bruno
952aafff57 Remove dot 2021-06-24 17:10:00 +00:00
Bruno
18f90a7832 Unwrap badges and remove break lines 2021-06-24 16:56:46 +00:00
Bruno
2d467b4fbc Wrapping the badges on div 2021-06-24 16:55:02 +00:00
Bruno
1b288f91e4 docs: move README to docs 2021-06-24 16:21:28 +00:00
Joe Previte
3226a53b02
docs: update CHANGELOG process 2021-06-23 15:37:01 -07:00
Joe Previte
02b9489489
refactor: add func getNlsConfiguration & tests
This PR refactors part of vscode.ts and adds a function to get the NLS
Configuration.

This makes the code more readable and easier to test.

And it adds multiple tests for this part of the codebase.
2021-06-23 13:42:06 -07:00
Joe Previte
4b0dd07634
Merge pull request #3655 from cdr/dependabot/npm_and_yarn/typescript-eslint/parser-4.28.0
chore(deps-dev): bump @typescript-eslint/parser from 4.27.0 to 4.28.0
2021-06-23 11:32:44 -07:00
Joe Previte
d4fe54601b
docs: add backspace android workaround 2021-06-23 11:26:59 -07:00
Joe Previte
fbba8e8b25
Merge pull request #3656 from cdr/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.28.0
chore(deps-dev): bump @typescript-eslint/eslint-plugin from 4.27.0 to 4.28.0
2021-06-22 10:58:49 -07:00
dependabot[bot]
803dadbfa2
chore(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.27.0 to 4.28.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-22 11:04:14 +00:00
dependabot[bot]
f2040b18e6
chore(deps-dev): bump @typescript-eslint/parser from 4.27.0 to 4.28.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.27.0 to 4.28.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-22 11:03:34 +00:00
Joe Previte
c5f0b1052c
Merge pull request #3647 from cdr/khorne3-patch-1
Update link desc to Coder.com in README
2021-06-21 11:03:24 -07:00
Katie Horne
5b261e13a9
Update link desc to Coder.com in README 2021-06-21 10:51:55 -05:00
dependabot[bot]
9422a4aba7
chore(deps-dev): bump eslint from 7.28.0 to 7.29.0 (#3644)
Bumps [eslint](https://github.com/eslint/eslint) from 7.28.0 to 7.29.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.28.0...v7.29.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-21 18:03:28 +05:30
Joe Previte
aa08f84aeb
Merge pull request #3635 from cdr/dependabot/npm_and_yarn/typescript-4.3.4
chore(deps-dev): bump typescript from 4.3.2 to 4.3.4
2021-06-18 10:04:48 -07:00
Joe Previte
a51836fca7
Merge pull request #3629 from cdr/jsjoeio/docs-testing
docs(CONTRIBUTING): add section on testing
2021-06-18 10:04:06 -07:00
dependabot[bot]
bee35549f1
chore(deps-dev): bump typescript from 4.3.2 to 4.3.4
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.3.2 to 4.3.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.3.2...v4.3.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-18 11:03:23 +00:00
Joe Previte
d9bb1a36eb
docs(contr): add section on testing 2021-06-17 16:25:25 -07:00
Joe Previte
5f7e9b7361
Merge pull request #3630 from janiversen/patch-1
docs: Update CONTRIBUTING.md
2021-06-17 16:05:27 -07:00
jan iversen
ece5de699a Update CONTRIBUTING.md
Node needs be v14.x not greater. If installing the standard version ‘brew install node’, both ‘yarn’ and ‘code-server’ (release version) complains.

Newest version is v16.x so we are pretty far behind.
2021-06-17 20:57:00 +02:00
dependabot[bot]
bf45e7ca15
chore(deps-dev): bump @types/ws from 7.4.4 to 7.4.5 (#3627)
Bumps [@types/ws](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ws) from 7.4.4 to 7.4.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ws)

---
updated-dependencies:
- dependency-name: "@types/ws"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-17 23:49:14 +05:30
dependabot[bot]
9dae4fec25
chore(deps): bump ws from 7.4.6 to 7.5.0 (#3625)
Bumps [ws](https://github.com/websockets/ws) from 7.4.6 to 7.5.0.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.4.6...7.5.0)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-17 23:49:03 +05:30
Joe Previte
83701f9f6d
Merge pull request #3626 from cdr/dependabot/npm_and_yarn/wtfnode-0.9.0
chore(deps-dev): bump wtfnode from 0.8.4 to 0.9.0
2021-06-17 10:49:40 -07:00
jan iversen
4e14c11fa4
Allow development on any architecture (#3598) 2021-06-17 12:28:54 -05:00
dependabot[bot]
79f372c1a0
chore(deps-dev): bump wtfnode from 0.8.4 to 0.9.0
Bumps [wtfnode](https://github.com/myndzi/wtfnode) from 0.8.4 to 0.9.0.
- [Release notes](https://github.com/myndzi/wtfnode/releases)
- [Commits](https://github.com/myndzi/wtfnode/commits)

---
updated-dependencies:
- dependency-name: wtfnode
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-17 11:04:04 +00:00
Joe Previte
cbe3192971
Merge pull request #3617 from cdr/dependabot/npm_and_yarn/audit-ci-4.1.0
chore(deps-dev): bump audit-ci from 4.0.0 to 4.1.0
2021-06-16 10:03:35 -07:00
Joe Previte
ddbff58eec
Merge pull request #3602 from patrickcylai/patrickcylai/fix-docs-hashed-password
fix: placeholder password in hashed password example
2021-06-16 09:49:53 -07:00
dependabot[bot]
18c0f32c24
chore(deps-dev): bump audit-ci from 4.0.0 to 4.1.0
Bumps [audit-ci](https://github.com/IBM/audit-ci) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/IBM/audit-ci/releases)
- [Commits](https://github.com/IBM/audit-ci/compare/v4.0.0...v4.1.0)

---
updated-dependencies:
- dependency-name: audit-ci
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-16 11:02:59 +00:00
Asher
b59b3936d0
Fix incorrect logout base (#3611)
Fixes #3608.
2021-06-15 15:11:01 -05:00
dependabot[bot]
3241a4f521
chore(deps-dev): bump @typescript-eslint/parser from 4.26.1 to 4.27.0 (#3609)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.26.1 to 4.27.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.27.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-15 21:46:00 +05:30
dependabot[bot]
5c9b625acb
chore(deps-dev): bump @typescript-eslint/eslint-plugin (#3610)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.26.1 to 4.27.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.27.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-15 21:34:56 +05:30
Patrick Lai
5fae520ebe fix: placeholder password in hashed password example 2021-06-13 01:25:05 +10:00
Joe Previte
4bb7a8ddb9
Merge pull request #3590 from mxschmitt/chore/upgrade-to-latest-playwright
chore: upgrade to Playwright 1.12 with its new test-runner
2021-06-10 11:15:41 -07:00
Joe Previte
2c818e3855
Merge pull request #3589 from cdr/dependabot/npm_and_yarn/argon2-0.28.2
chore(deps): bump argon2 from 0.28.0 to 0.28.2
2021-06-10 09:36:45 -07:00
Max Schmitt
dbb34ad710 chore: upgrade to Playwright 1.12 with its new test-runner 2021-06-10 15:09:38 +02:00
dependabot[bot]
fda44240c9
chore(deps): bump argon2 from 0.28.0 to 0.28.2
Bumps [argon2](https://github.com/ranisalt/node-argon2) from 0.28.0 to 0.28.2.
- [Release notes](https://github.com/ranisalt/node-argon2/releases)
- [Commits](https://github.com/ranisalt/node-argon2/compare/v0.28.0...v0.28.2)

---
updated-dependencies:
- dependency-name: argon2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-10 11:01:38 +00:00
Joe Previte
9fc9c041ad
Merge pull request #3588 from cdr/dependabot/npm_and_yarn/lib/vscode/normalize-url-4.5.1
chore(deps): bump normalize-url from 4.5.0 to 4.5.1 in /lib/vscode
2021-06-09 15:06:08 -07:00
Joe Previte
a802a920ac
Merge pull request #3587 from cdr/dependabot/npm_and_yarn/lib/vscode/build/normalize-url-4.5.1
chore(deps): bump normalize-url from 4.5.0 to 4.5.1 in /lib/vscode/build
2021-06-09 15:05:54 -07:00
dependabot[bot]
54684c0ad2
chore(deps): bump normalize-url from 4.5.0 to 4.5.1 in /lib/vscode
Bumps [normalize-url](https://github.com/sindresorhus/normalize-url) from 4.5.0 to 4.5.1.
- [Release notes](https://github.com/sindresorhus/normalize-url/releases)
- [Commits](https://github.com/sindresorhus/normalize-url/commits)

---
updated-dependencies:
- dependency-name: normalize-url
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-09 21:32:56 +00:00
dependabot[bot]
2594aa3e41
chore(deps): bump normalize-url from 4.5.0 to 4.5.1 in /lib/vscode/build
Bumps [normalize-url](https://github.com/sindresorhus/normalize-url) from 4.5.0 to 4.5.1.
- [Release notes](https://github.com/sindresorhus/normalize-url/releases)
- [Commits](https://github.com/sindresorhus/normalize-url/commits)

---
updated-dependencies:
- dependency-name: normalize-url
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-09 21:32:42 +00:00
Joe Previte
717eaa6470
Merge pull request #3422 from cdr/jsjoeio/fix-password-hash
fix: use sufficient computational effort for password hash
2021-06-09 14:32:05 -07:00
Joe Previte
1e55a648a5
feat: check for empty str in isHashMatch 2021-06-08 15:10:59 -07:00
Joe Previte
3b50bfc17d
fix: sanitize password and cookie key 2021-06-08 14:33:17 -07:00
Joe Previte
deaa2242ca
feat: add npm_config_build_from_source to build scripts
This is necessary due to argon2 being added and an upstream issue where it uses
a Linux build that is too new for CentOS 7.
2021-06-08 14:33:17 -07:00
Joe Previte
8c2bb61af9
refactor: parse options with multiple = in cli
There was a case with the hashed-password which had multiple equal signs in the
value and it wasn't being parsed correctly. This uses a new function and adds a
few tests.
2021-06-08 14:33:17 -07:00
Joe Previte
531b7c0c25
feat: add splitOnFirstEquals function 2021-06-08 14:33:16 -07:00
Joe Previte
517aaf71c5
docs: update FAQ with new hashing instructions 2021-06-08 14:33:16 -07:00
Joe Previte
923761cd78
refactor: password logic in http w/ isCookieValid 2021-06-08 14:33:16 -07:00
Joe Previte
6020480b30
feat: add isCookieValid function and tests 2021-06-08 14:33:16 -07:00
Joe Previte
409b473c82
refactor: rewrite password logic at /login 2021-06-08 14:33:15 -07:00
Joe Previte
a14ea39c4a
feat: add handlePasswordValidation + tests 2021-06-08 14:33:15 -07:00
Joe Previte
7ff4117531
feat: add getPasswordMethod & test for it 2021-06-08 14:33:15 -07:00
Joe Previte
ffa5c16e51
feat: update cli and test for hashed-password 2021-06-08 14:33:15 -07:00
Joe Previte
788b958e20
refactor: update hash fn in test config 2021-06-08 14:33:14 -07:00
Joe Previte
1134780b8b
refactor: make wsProxy async 2021-06-08 14:33:14 -07:00
Joe Previte
91303d4e40
refactor: make ensureAuthenticated async 2021-06-08 14:33:14 -07:00
Joe Previte
0cdbd33b46
refactor: make authenticated async everywhere
Since this checks if they are authenticated using the hash/password and it's
async, we need to update authenticated to be async, which means we have to
update it everywhere it's used.
2021-06-08 14:33:14 -07:00
Joe Previte
fcc3f0d951
refactor: update login logic with new async hashing
This adds the proper await logic for the hashing of passwords.
2021-06-08 14:33:13 -07:00
Joe Previte
fd3cb6cfa0
refactor: update unit tests for hash fns
Since the hash and isHashMatch are now async, I had to update the tests
accordingly. Now everything is working.
2021-06-08 14:33:13 -07:00
Joe Previte
70197bb2a5
refactor: use argon2 instead of bcrypt
This uses argon2 instead of bcrypt.

Note: this means the hash functions are now async which means we have to
refactor a lot of other code around auth.
2021-06-08 14:33:13 -07:00
Joe Previte
51f8341959
chore: update to argon2 in test 2021-06-08 14:33:13 -07:00
Joe Previte
dc2db5c62d
chore: add argon2 package 2021-06-08 14:33:13 -07:00
Joe Previte
fc3326f1f2
feat: add tests using real hashes 2021-06-08 14:33:12 -07:00
Joe Previte
aaf044728f
refactor: add functions to check hash password 2021-06-08 14:33:12 -07:00
Joe Previte
f35120c0a3
feat: add unit test for hash function 2021-06-08 14:33:12 -07:00
Joe Previte
17be8c5cd3
refactor: use bcrypt in e2e setup 2021-06-08 14:33:12 -07:00
Joe Previte
cac667317e
refactor: use bcrypt in hash function 2021-06-08 14:33:11 -07:00
Joe Previte
dd2cb1649a
chore: update CHANGELOG 2021-06-08 14:32:16 -07:00
dependabot[bot]
d8c3ba6a17
chore(deps): bump glob-parent in /lib/vscode/build/lib/watch (#3570)
Bumps [glob-parent](https://github.com/gulpjs/glob-parent) from 5.1.1 to 5.1.2.
- [Release notes](https://github.com/gulpjs/glob-parent/releases)
- [Changelog](https://github.com/gulpjs/glob-parent/blob/main/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/glob-parent/compare/v5.1.1...v5.1.2)

---
updated-dependencies:
- dependency-name: glob-parent
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-09 00:25:30 +05:30
dependabot[bot]
4cd0456103
chore(deps-dev): bump @typescript-eslint/parser from 4.26.0 to 4.26.1 (#3567)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.26.0 to 4.26.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.26.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-09 00:23:42 +05:30
dependabot[bot]
38647836bb
chore(deps-dev): bump doctoc from 2.0.0 to 2.0.1 (#3568)
Bumps [doctoc](https://github.com/thlorenz/doctoc) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/thlorenz/doctoc/releases)
- [Commits](https://github.com/thlorenz/doctoc/compare/v2.0.0...v2.0.1)

---
updated-dependencies:
- dependency-name: doctoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-09 00:23:11 +05:30
dependabot[bot]
9288b02f0a
chore(deps): bump trim-newlines from 3.0.0 to 3.0.1 (#3571)
Bumps [trim-newlines](https://github.com/sindresorhus/trim-newlines) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/sindresorhus/trim-newlines/releases)
- [Commits](https://github.com/sindresorhus/trim-newlines/commits)

---
updated-dependencies:
- dependency-name: trim-newlines
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-09 00:22:16 +05:30
Joe Previte
9052a1364a
Merge pull request #3557 from cuining/main
chore: update .gitignore
2021-06-08 10:54:56 -07:00
dependabot[bot]
3edbd09ddb
chore(deps-dev): bump @typescript-eslint/eslint-plugin (#3569)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.26.0 to 4.26.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.26.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-08 21:55:01 +05:30
cuining
eadd194677
Update CHANGELOG.md 2021-06-08 10:46:30 +08:00
cuining
1cd736db81
Update CHANGELOG.md 2021-06-08 10:46:14 +08:00
cuining
8252e4460b Merge branch 'cdr:main' into main 2021-06-08 10:33:14 +08:00
Joe Previte
ecbef27981
Merge pull request #3559 from cdr/dependabot/npm_and_yarn/prettier-2.3.1
chore(deps-dev): bump prettier from 2.3.0 to 2.3.1
2021-06-07 11:13:19 -07:00
dependabot[bot]
635170c7ed
chore(deps-dev): bump prettier from 2.3.0 to 2.3.1
Bumps [prettier](https://github.com/prettier/prettier) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.3.0...2.3.1)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-07 18:08:25 +00:00
Joe Previte
0659a2ea73
Merge pull request #3558 from cdr/dependabot/npm_and_yarn/eslint-7.28.0
chore(deps-dev): bump eslint from 7.27.0 to 7.28.0
2021-06-07 11:05:12 -07:00
dependabot[bot]
f37c748471
chore(deps-dev): bump eslint from 7.27.0 to 7.28.0
Bumps [eslint](https://github.com/eslint/eslint) from 7.27.0 to 7.28.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.27.0...v7.28.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-07 11:02:40 +00:00
cuining
0400a891f7 Merge branch 'cdr:main' into main 2021-06-07 14:26:55 +08:00
cuining
c3dfb90eda
Update .gitignore 2021-06-07 14:26:39 +08:00
Joe Previte
7b6df50553
Merge pull request #3545 from cdr/dependabot/npm_and_yarn/lib/vscode/ws-7.4.6
chore(deps): bump ws from 7.4.5 to 7.4.6 in /lib/vscode
2021-06-04 14:46:53 -07:00
dependabot[bot]
ca2ff01d68
chore(deps): bump ws from 7.4.5 to 7.4.6 in /lib/vscode
Bumps [ws](https://github.com/websockets/ws) from 7.4.5 to 7.4.6.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.4.5...7.4.6)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-04 18:46:07 +00:00
Akash Satheesan
23eacac207
chore(deps): update chrome-remote-interface (#3536) 2021-06-04 18:45:32 +00:00
Joe Previte
f3640610b5
Merge pull request #3532 from PisecesPeng/patch-1
docs: format 'Caddy'
2021-06-04 10:44:21 -07:00
PisecesPeng
aa9fadfb6f
Update CHANGELOG.md 2021-06-04 07:03:33 +08:00
PisecesPeng
e97b79f879
Merge branch 'main' into patch-1 2021-06-04 06:52:07 +08:00
repo-ranger[bot]
56abc4a7cb
Merge pull request #3468 from cdr/jsjoeio/fix-3444
fix(publish): update cdrci fork in brew-bump.sh
2021-06-03 17:35:36 +00:00
Joe Previte
8b38314913
feat: add 'set up homebrew' step publish.yaml 2021-06-03 10:18:48 -07:00
Joe Previte
808daa44e1
fix: update git push to cdrci repo in brew-bump 2021-06-03 10:18:48 -07:00
Akash Satheesan
05197d5213
feat(ci): add restore-keys for ci speedup (#3516) 2021-06-03 22:00:37 +05:30
PisecesPeng
988dc724f9
format 'caddy' for guide docs 2021-06-03 15:13:25 +08:00
Joe Previte
40ef0f23cb
Merge pull request #3512 from cdr/oxy/release-doc-fixup
docs: move release process to MAINTAINING.md
2021-06-01 16:38:50 -07:00
Akash Satheesan
30a312df29
docs: change header depth 2021-06-01 16:34:17 -07:00
Akash Satheesan
857c62ae1d
chore: yarn fmt + changelog 2021-06-01 16:34:16 -07:00
Prashant168
7dfd3676c1
docs: remove "Publishing A Release" from ci/README.md
Deleted "Publishing A Release" section from the readme.md file in the 'ci'
folder and then pasting the section in 'Maintaining.md'
2021-06-01 16:33:52 -07:00
Prashant168
e02ecc2c80
docs: add "Publishing A Release" in 'MAINTAINING.md' file
Pasted "Publishing A Release" in the 'MAINTAINING.md' file from line #98
2021-06-01 16:33:48 -07:00
Joe Previte
54aea3f77f
Merge pull request #3520 from cdr/jsjoeio/fix-ws-vul
fix: ws vulnerabilities
2021-06-01 15:59:38 -07:00
Joe Previte
70b5ae0084
chore: fix ws vulnerabilities 2021-06-01 15:36:51 -07:00
Asher
546dd9c278
Catch getLayoutMap error (#3518)
This might be causing issues with the PWA showing a blank screen with
MacOS.
2021-06-01 16:04:26 -05:00
Akash Satheesan
58622ccc34
chore: update node to v14 (#3481) 2021-06-01 22:49:03 +05:30
dependabot[bot]
c2a8634bcc
chore(deps-dev): bump @typescript-eslint/parser from 4.25.0 to 4.26.0 (#3514)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.25.0 to 4.26.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.26.0/packages/parser)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-01 15:27:19 +00:00
dependabot[bot]
1aabca7df9
chore(deps-dev): bump @typescript-eslint/eslint-plugin (#3515)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.25.0 to 4.26.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.26.0/packages/eslint-plugin)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-01 20:45:28 +05:30
dependabot[bot]
af9b2bfd3f
chore(deps-dev): bump eslint-plugin-import from 2.23.3 to 2.23.4 (#3511)
Bumps [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) from 2.23.3 to 2.23.4.
- [Release notes](https://github.com/benmosher/eslint-plugin-import/releases)
- [Changelog](https://github.com/benmosher/eslint-plugin-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/benmosher/eslint-plugin-import/compare/v2.23.3...v2.23.4)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-31 14:54:13 +00:00
dependabot[bot]
0832df1a3f
chore(deps): bump ws from 7.4.2 to 7.4.6 in /test (#3510)
Bumps [ws](https://github.com/websockets/ws) from 7.4.2 to 7.4.6.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.4.2...7.4.6)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-31 20:12:53 +05:30
dependabot[bot]
8c7e7819b9
chore(deps): bump aquasecurity/trivy-action from 0.0.17 to 0.0.18 (#3500)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.0.17 to 0.0.18.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](dba83feec8...ac8de07fd1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-28 22:39:07 +05:30
Akash Satheesan
1ccf69f731
chore: cross-compile docker images with buildx (#3503) 2021-05-28 16:51:41 +00:00
Joe Previte
8e92dd62ab
chore: update CHANGELOG (#3465)
Co-authored-by: Akash Satheesan <akash@coder.com>
2021-05-27 16:46:04 +00:00
dependabot[bot]
b9dc2079fe
chore(deps-dev): bump @typescript-eslint/parser from 4.24.0 to 4.25.0 (#3471)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.24.0 to 4.25.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.25.0/packages/parser)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Akash Satheesan <akash@coder.com>
2021-05-27 16:37:05 +00:00
Joe Previte
0e67ab7b85
docs: add changelog to MAINTAINING.md (#3467)
Co-authored-by: Akash Satheesan <akash@coder.com>
2021-05-27 22:02:09 +05:30
Joe Previte
8ed578b686
docs: remove toc from changelog (#3466)
Co-authored-by: Akash Satheesan <akash@coder.com>
2021-05-27 16:16:54 +00:00
dependabot[bot]
b1186d7223
chore(deps-dev): bump @types/express from 4.17.11 to 4.17.12 (#3480)
Bumps [@types/express](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/express) from 4.17.11 to 4.17.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/express)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-27 16:06:46 +00:00
dependabot[bot]
87cceb7f4c
chore(deps): bump ws from 7.4.5 to 7.4.6 (#3479)
Bumps [ws](https://github.com/websockets/ws) from 7.4.5 to 7.4.6.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.4.5...7.4.6)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-27 21:24:55 +05:30
dependabot[bot]
45d736a884
chore(deps-dev): bump typescript from 4.2.4 to 4.3.2 (#3489)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.2.4 to 4.3.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.2.4...v4.3.2)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-27 21:01:51 +05:30
Joe Previte
66cabab578
Merge pull request #3460 from shiv-tyagi/grammer-fix
docs: fix confusing sentence in pull requests section
2021-05-25 11:09:47 -07:00
Joe Previte
535e9720ef
Merge branch 'main' into grammer-fix 2021-05-25 11:04:58 -07:00
dependabot[bot]
8accaf57d6
chore(deps-dev): bump @typescript-eslint/eslint-plugin (#3470)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.24.0 to 4.25.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.25.0/packages/eslint-plugin)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-25 23:17:04 +05:30
Shiv Tyagi
65a01ebe0f
Merge branch 'main' into grammer-fix 2021-05-25 09:46:40 +05:30
Shiv
5c41954417 ran yarn fmt locally 2021-05-25 07:37:19 +05:30
Joe Previte
dc81786166
Merge pull request #3451 from cdr/dependabot/npm_and_yarn/ts-node-10.0.0
chore(deps-dev): bump ts-node from 9.1.1 to 10.0.0
2021-05-24 14:53:27 -07:00
dependabot[bot]
b07fa410c7
chore(deps-dev): bump ts-node from 9.1.1 to 10.0.0
Bumps [ts-node](https://github.com/TypeStrong/ts-node) from 9.1.1 to 10.0.0.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v9.1.1...v10.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 21:45:22 +00:00
Joe Previte
de16f57609
Merge pull request #3464 from cdr/dependabot/npm_and_yarn/test/browserslist-4.16.6
chore(deps): bump browserslist from 4.16.4 to 4.16.6 in /test
2021-05-24 14:42:11 -07:00
Joe Previte
8df83acb5f
Merge branch 'main' into dependabot/npm_and_yarn/test/browserslist-4.16.6 2021-05-24 14:37:33 -07:00
Joe Previte
6f7e9a37cd
Merge branch 'main' into grammer-fix 2021-05-24 14:37:17 -07:00
Joe Previte
5c42b7c44b
Merge pull request #3424 from desimone/patch-1
docs: add Pomerium
2021-05-24 14:37:11 -07:00
Joe Previte
374bda17ab
Merge branch 'main' into grammer-fix 2021-05-24 14:36:11 -07:00
dependabot[bot]
20874c1833
chore(deps): bump browserslist from 4.16.4 to 4.16.6 in /test
Bumps [browserslist](https://github.com/browserslist/browserslist) from 4.16.4 to 4.16.6.
- [Release notes](https://github.com/browserslist/browserslist/releases)
- [Changelog](https://github.com/browserslist/browserslist/blob/main/CHANGELOG.md)
- [Commits](https://github.com/browserslist/browserslist/compare/4.16.4...4.16.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 21:28:37 +00:00
Joe Previte
a86c9afae4
Merge branch 'main' into patch-1 2021-05-24 14:27:59 -07:00
Joe Previte
c6d5da1c9c
Merge pull request #3461 from cdr/jsjoeio/fix-3459
fix(ci): disable trivy-scan-image
2021-05-24 14:27:53 -07:00
Joe Previte
3d9f9221fa
Merge branch 'main' into patch-1 2021-05-24 14:27:50 -07:00
Joe Previte
35f57e5ebb
chore(security): upgrade browserslist 2021-05-24 14:21:00 -07:00
Joe Previte
ff93932ba2
fix: temporarily disable trivy-scan-image 2021-05-24 14:02:15 -07:00
Shiv
471e4ac72b updated changelog 2021-05-24 23:23:12 +05:30
Shiv Tyagi
9f3d575973
Merge branch 'main' into grammer-fix 2021-05-24 22:40:43 +05:30
Joe Previte
99542e67aa
Merge pull request #3450 from cdr/dependabot/npm_and_yarn/eslint-plugin-import-2.23.3
chore(deps-dev): bump eslint-plugin-import from 2.23.2 to 2.23.3
2021-05-24 10:04:29 -07:00
Joe Previte
cf13e6bf52
Merge branch 'main' into dependabot/npm_and_yarn/eslint-plugin-import-2.23.3 2021-05-24 09:56:18 -07:00
Joe Previte
680a1e27c1
Merge pull request #3449 from cdr/dependabot/npm_and_yarn/eslint-7.27.0
chore(deps-dev): bump eslint from 7.26.0 to 7.27.0
2021-05-24 09:54:23 -07:00
Shiv
72b3fd9df4 fixed confusing sentence in pull requests section 2021-05-24 22:20:14 +05:30
dependabot[bot]
2d7bc7f675
chore(deps-dev): bump eslint-plugin-import from 2.23.2 to 2.23.3
Bumps [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) from 2.23.2 to 2.23.3.
- [Release notes](https://github.com/benmosher/eslint-plugin-import/releases)
- [Changelog](https://github.com/benmosher/eslint-plugin-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/benmosher/eslint-plugin-import/compare/v2.23.2...v2.23.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 11:02:52 +00:00
dependabot[bot]
dc2d769161
chore(deps-dev): bump eslint from 7.26.0 to 7.27.0
Bumps [eslint](https://github.com/eslint/eslint) from 7.26.0 to 7.27.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.26.0...v7.27.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 11:02:34 +00:00
Joe Previte
0608e86e3d
Merge pull request #3440 from cdr/v3.10.2
release: 3.10.2
2021-05-21 16:43:19 -07:00
Joe Previte
4fc8d98610
refactor: remove extra step in release-prep.sh 2021-05-21 16:08:46 -07:00
Joe Previte
29292fd33b
chore: update version in CHANGELOG 2021-05-21 16:08:21 -07:00
Joe Previte
31aac201bf
chore(release): bump version to 3.10.2 2021-05-21 16:04:55 -07:00
Joe Previte
a4168e45d7
Merge pull request #3438 from cdr/jsjoeio/fix-3407
fix(ci): update brew-bump.sh to update remote first
2021-05-21 15:28:57 -07:00
Joe Previte
ed0ddeaf3e
fix: make sure homebrew-core is up to date 2021-05-21 15:00:45 -07:00
Joe Previte
c0342436ff
chore: update CHANGELOG 2021-05-21 15:00:44 -07:00
Joe Previte
604491d333
fix: use correct command to Open Folder on Welcome page (#3437)
* chore: update CHANGELOG

* fix: use openFolder in welcomePage

In 1.56.2, they modified the WelcomePage use of OpenFileFolder in
src/vs/workbench/contrib/debug/browser/welcomeView.ts to only use on macOS +
Desktop (i.e. not Web). This caused the "Open Folder" to not work on macOS +
macOS-like environments.

Instead, we use OpenFolder which is a registered command and works as expected.
2021-05-21 19:27:50 +00:00
Joe Previte
ee78c31b4a
Merge branch 'main' into patch-1 2021-05-21 10:46:41 -07:00
bobby
c1bc464150
Update docs/FAQ.md
Co-authored-by: Joe Previte <jjprevite@gmail.com>
2021-05-21 10:44:54 -07:00
Joe Previte
ac965176ca
Merge pull request #3393 from strowk/extra-init-containers
Introduce extraInitContainers to helm chart
2021-05-20 12:16:08 -07:00
Joe Previte
43d72c59bc
chore: update CHANGELOG 2021-05-20 12:11:31 -07:00
Joe Previte
1634349908
Merge branch 'main' into extra-init-containers 2021-05-20 12:07:44 -07:00
Joe Previte
8f3de91775
Merge pull request #3430 from cdr/jsjoeio/limiter-updates
fix(dependabot): limit limiter updates
2021-05-20 12:04:09 -07:00
Joe Previte
75e6ab1197
fix(dependabot): limit limiter updates 2021-05-20 11:59:27 -07:00
Timur Sultanaev
1ffca5751c introduce extraInitContainers to helm chart
New extraInitContainers configuration added.
It allows to pass template with a list of containers to execute before
main code-server container started. Main container will only start when
all init containers are  completed (exited with 0 code).

 Additionally changes the way extraContainers is used - instead of
 toYaml use tpl, because this allows to
 reference any values from extraContainers string.
2021-05-20 17:52:35 +02:00
bobby
9d7ac2aa60
Add Pomerium
RE: https://github.com/pomerium/pomerium/pull/2223
2021-05-19 17:23:30 -07:00
Joe Previte
6e9e891684
Merge pull request #3409 from cdr/dependabot/npm_and_yarn/typescript-eslint/parser-4.24.0
chore(deps-dev): bump @typescript-eslint/parser from 4.23.0 to 4.24.0
2021-05-19 10:37:47 -07:00
dependabot[bot]
5d393b9d91
chore(deps-dev): bump @typescript-eslint/parser from 4.23.0 to 4.24.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.23.0 to 4.24.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.24.0/packages/parser)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-18 18:56:32 +00:00
Joe Previte
4c77893ce2
Merge pull request #3402 from cdr/dependabot/npm_and_yarn/eslint-plugin-import-2.23.2
chore(deps-dev): bump eslint-plugin-import from 2.23.0 to 2.23.2
2021-05-18 11:54:05 -07:00
dependabot[bot]
ec07a03242
chore(deps-dev): bump eslint-plugin-import from 2.23.0 to 2.23.2
Bumps [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) from 2.23.0 to 2.23.2.
- [Release notes](https://github.com/benmosher/eslint-plugin-import/releases)
- [Changelog](https://github.com/benmosher/eslint-plugin-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/benmosher/eslint-plugin-import/compare/v2.23.0...v2.23.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-18 18:45:21 +00:00
Joe Previte
ef9e09d970
Merge pull request #3408 from cdr/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.24.0
chore(deps-dev): bump @typescript-eslint/eslint-plugin from 4.23.0 to 4.24.0
2021-05-18 11:41:23 -07:00
dependabot[bot]
ff87ed26e4
chore(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.23.0 to 4.24.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.24.0/packages/eslint-plugin)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-18 18:31:57 +00:00
Joe Previte
288c3a2efb
Merge pull request #3403 from cdr/dependabot/npm_and_yarn/types/http-proxy-1.17.6
chore(deps-dev): bump @types/http-proxy from 1.17.5 to 1.17.6
2021-05-18 11:28:30 -07:00
dependabot[bot]
0d0f0d22d6
chore(deps-dev): bump @types/http-proxy from 1.17.5 to 1.17.6
Bumps [@types/http-proxy](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/http-proxy) from 1.17.5 to 1.17.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/http-proxy)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-17 20:04:10 +00:00
Asher
e983ba9a4b
v3.10.1 (#3406)
* Update versions
* Update changelog
2021-05-17 14:59:41 -05:00
SIGSEGV
b3bd6c3703
Termux on Play Store is deprecated; replaced with F-Droid link (#3396)
Fixes #3395.
2021-05-17 12:14:57 -05:00
Joe Previte
a3663f54d0
Merge pull request #3360 from cdr/jsjoeio/document-release-manager
docs(maintaining): add process for release managers
2021-05-14 16:13:36 -07:00
Joe Previte
2438fb307c
fix: use next version in changelog 2021-05-14 16:09:30 -07:00
Joe Previte
12b1e484be
docs(maintaining): add release manager rotation 2021-05-14 16:09:26 -07:00
Joe Previte
eb82054357
docs: update publishing a release process 2021-05-14 16:09:06 -07:00
Joe Previte
1b75734332
fix(release-prep.sh): don't update CHANGELOG 2021-05-14 16:09:06 -07:00
Joe Previte
ade43c02b7
docs: update release_template PR 2021-05-14 16:09:06 -07:00
Joe Previte
9ab5ccf908
docs: add release issue template 2021-05-14 16:09:05 -07:00
Joe Previte
509d91ddab
Merge pull request #3377 from cdr/jsjoeio/docs-clean-commits
docs(contributing): add commits section
2021-05-14 13:54:24 -07:00
Joe Previte
60d71fee6f
docs(contributing): add commits section 2021-05-14 13:50:05 -07:00
Joe Previte
62b5fadd9c
docs(contributing): add commits section 2021-05-14 13:50:01 -07:00
Joe Previte
a7cf990782
Merge pull request #3375 from cdr/jsjoeio/fix-pr-template
refactor: move default PR template
2021-05-14 13:22:58 -07:00
Joe Previte
6f09749b65
refactor: move default PR template 2021-05-14 13:18:39 -07:00
Asher
b49b1796e9
Add socket type to websocket connection query (#3391)
This was added a long time ago but accidentally lost when we reverted
the retry changes to this file after one of the VS Code updates that
added their own retry (we reverted everything not realizing we had other
unrelated changes in here).
2021-05-14 15:05:05 -05:00
Joe Previte
36265ddfaf
Merge pull request #3368 from cdr/jsjoeio/re-enable-trivy
fix(ci): re-enable trivy-scan-repo
2021-05-14 10:47:57 -07:00
Joe Previte
5fe76bdecf
fix: update trivy-action to v0.0.17 2021-05-14 10:43:25 -07:00
Joe Previte
065b141106
chore: update CHANGELOG 2021-05-14 10:43:22 -07:00
Joe Previte
604194d1b8
fix: re-enable trivy-scan-repo 2021-05-14 10:42:47 -07:00
Joe Previte
f5b792706a
Merge pull request #3387 from cdr/dependabot/npm_and_yarn/types/semver-7.3.6
chore(deps-dev): bump @types/semver from 7.3.5 to 7.3.6
2021-05-14 09:55:03 -07:00
dependabot[bot]
87953ca963
chore(deps-dev): bump @types/semver from 7.3.5 to 7.3.6
Bumps [@types/semver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/semver) from 7.3.5 to 7.3.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/semver)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-14 16:46:14 +00:00
Joe Previte
f80657d560
Merge pull request #3386 from cdr/dependabot/npm_and_yarn/eslint-plugin-import-2.23.0
chore(deps-dev): bump eslint-plugin-import from 2.22.1 to 2.23.0
2021-05-14 09:42:43 -07:00
dependabot[bot]
cf69860aed
chore(deps-dev): bump eslint-plugin-import from 2.22.1 to 2.23.0
Bumps [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) from 2.22.1 to 2.23.0.
- [Release notes](https://github.com/benmosher/eslint-plugin-import/releases)
- [Changelog](https://github.com/benmosher/eslint-plugin-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/benmosher/eslint-plugin-import/compare/v2.22.1...v2.23.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-14 11:03:26 +00:00
Joe Previte
10f512c63a
Merge pull request #3378 from cdr/jsjoeio/milestones-issues
docs(maintaining): add pull requests section
2021-05-13 12:32:17 -07:00
Joe Previte
7be1ae36a2
docs(maintaining): add merge strategies section 2021-05-13 12:27:29 -07:00
Joe Previte
fc894e47fb
docs(maintaining): add pull requests section 2021-05-13 12:25:13 -07:00
Joe Previte
d2337bcd85
Merge pull request #3304 from cdr/jsjoeio/fix-tmp-path
fix(socket): use xdgBasedir.runtime instead of tmp
2021-05-13 12:14:45 -07:00
Joe Previte
46fe77d464
chore: update CHANGELOG 2021-05-13 12:10:22 -07:00
Joe Previte
d7f1415290
refactor: use paths.runtime in socket proxyPipe 2021-05-13 12:10:21 -07:00
Joe Previte
2a657ab930
feat: add tests for getEnvPaths 2021-05-13 12:10:21 -07:00
Joe Previte
a57ee69822
feat: add runtime to getEnvPaths 2021-05-13 12:10:21 -07:00
Joe Previte
adc4463507
docs: update pr template to say default branch 2021-05-13 12:10:21 -07:00
kenve
8e21eb51b3
fix(lib/vscode): fix missing rimraf when running postinstall script (#3383) 2021-05-13 11:06:45 -05:00
repo-ranger[bot]
800815f7fd
Merge pull request #3376 from cdr/jsjoeio/install-pi-docs
docs(install): add raspberry pi section
2021-05-12 22:16:38 +00:00
Joe Previte
0699bd7ead
docs(install): add raspberry pi 2021-05-12 15:01:31 -07:00
Asher
e64fd451b3
Override existing asar symlink in postinstall (#3369)
This ensures the link is correct. Should fix #3355.
2021-05-12 16:46:29 -05:00
repo-ranger[bot]
8f82d6e8b9
Merge pull request #3374 from cdr/dependabot/npm_and_yarn/types/node-12.20.13
chore(deps-dev): bump @types/node from 12.20.12 to 12.20.13
2021-05-12 21:35:42 +00:00
dependabot[bot]
993b93cf28
chore(deps-dev): bump @types/node from 12.20.12 to 12.20.13
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 12.20.12 to 12.20.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 21:06:16 +00:00
Joe Previte
83f266e07d
Merge pull request #3367 from jawnsy/dependabot-ignore-playwright-updates
chore: ignore updates to microsoft/playwright-github-action
2021-05-12 14:02:08 -07:00
Jonathan Yu
416362be31 chore: ignore updates to microsoft/playwright-github-action
Microsoft publishes updates to this action using the same scheme
as GitHub, where the v1 tag is updated to the latest release of
the 1.0 series. Therefore, we can manage updates manually.
2021-05-12 18:47:37 +00:00
Joe Previte
825a40e897
chore: update CHANGELOG (#3354) 2021-05-12 12:19:02 -05:00
Joe Previte
82ce9d5adb
Merge pull request #3357 from cdr/oxy/update-prettier
chore(deps-dev): bump prettier to 2.3.0
2021-05-11 14:23:41 -07:00
Akash Satheesan
74fbb425f2
fix(lib/vscode): update to 1.56.1 (#3351) 2021-05-12 01:15:06 +05:30
Akash Satheesan
adc9b57080
chore: reformat with new prettier 2021-05-12 01:14:04 +05:30
Akash Satheesan
715e5927bc
chore(deps-dev): bump prettier to 2.3.0 2021-05-12 01:13:45 +05:30
dependabot[bot]
6a4ff9c05c
chore(deps-dev): bump @typescript-eslint/parser from 4.22.1 to 4.23.0 (#3343)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.22.1 to 4.23.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.23.0/packages/parser)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-12 00:49:37 +05:30
dependabot[bot]
fd4ecabc02
chore(deps-dev): bump @typescript-eslint/eslint-plugin (#3344)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.22.1 to 4.23.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.23.0/packages/eslint-plugin)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-12 00:49:23 +05:30
dependabot[bot]
9e0524a3e7
chore(deps-dev): bump @types/ws from 7.4.2 to 7.4.4 (#3345)
Bumps [@types/ws](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ws) from 7.4.2 to 7.4.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ws)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-12 00:49:09 +05:30
Akash Satheesan
2ae8729ef3
chore(deps): update postcss, trim (#3356) 2021-05-12 00:44:50 +05:30
dependabot[bot]
f32d8e50e7
chore(deps-dev): bump eslint from 7.25.0 to 7.26.0 (#3333)
Bumps [eslint](https://github.com/eslint/eslint) from 7.25.0 to 7.26.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.25.0...v7.26.0)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-11 23:57:53 +05:30
Joe Previte
cc02b5feba
Merge pull request #3352 from cdr/jsjoeio/fix-line
fix(ci): fix typos in ci.yaml
2021-05-11 11:23:53 -07:00
Joe Previte
3cd3490dee
fix(ci): fix typos 2021-05-11 11:18:35 -07:00
Joe Previte
6d7f329001
Merge pull request #3341 from cdr/jsjoeio/disable-trivy
fix(ci): disable trivy-scan-repo
2021-05-11 10:30:17 -07:00
Joe Previte
510ff9c9f8
fix(ci): disable trivy-scan-repo 2021-05-11 10:26:04 -07:00
videlanicolas
3df771fbc4
Check the logged user instead of $USER (#3330)
* Check the logged user instead of $USER

Given that `sudo usermod --login "$DOCKER_USER" coder` and `sudo groupmod -n "$DOCKER_USER" coder` modify the container's disk it'll persist across restarts, but environment variables will be reset to whatever state they had at the end of `Dockerfile`. In this case, `$USER` is set to `coder`, so this branch will always be true.

By checking with the output of `whoami`, which gets it's information from `/etc/passwd`, we make sure to get the real logged user and not the one defined by $USER.

We also move `USER="$DOCKER_USER"` out of the branch, since we always want this to happen at entry-point. If we don't do this assignment, $USER will contain `coder` upon restart.

* Update entrypoint.sh

Check `$DOCKER_USER` was defined before copying it to `$USER`.
2021-05-11 10:26:38 -05:00
Akash Satheesan
014d7468f0
release: 3.10.0 (#3338)
Also fixes release scripts.
2021-05-11 03:59:49 +05:30
5468 changed files with 30263 additions and 1446342 deletions

View File

@ -1,46 +0,0 @@
parser: "@typescript-eslint/parser"
env:
browser: true
es6: true # Map, etc.
jest: true
node: true
parserOptions:
ecmaVersion: 2018
sourceType: module
extends:
- eslint:recommended
- plugin:@typescript-eslint/recommended
- plugin:import/recommended
- plugin:import/typescript
- plugin:prettier/recommended
# Prettier should always be last
# Removes eslint rules that conflict with prettier.
- prettier
rules:
# Sometimes you need to add args to implement a function signature even
# if they are unused.
"@typescript-eslint/no-unused-vars": ["error", { "args": "none" }]
# For overloads.
no-dupe-class-members: off
"@typescript-eslint/no-use-before-define": off
"@typescript-eslint/no-non-null-assertion": off
"@typescript-eslint/ban-types": off
"@typescript-eslint/no-var-requires": off
"@typescript-eslint/explicit-module-boundary-types": off
"@typescript-eslint/no-explicit-any": off
"@typescript-eslint/no-extra-semi": off
eqeqeq: error
import/order:
[error, { alphabetize: { order: "asc" }, groups: [["builtin", "external", "internal"], "parent", "sibling"] }]
no-async-promise-executor: off
# This isn't a real module, just types, which apparently doesn't resolve.
import/no-unresolved: [error, { ignore: ["express-serve-static-core"] }]
settings:
# Does not work with CommonJS unfortunately.
import/ignore:
- env-paths
- xdg-basedir

2
.git-blame-ignore-revs Normal file
View File

@ -0,0 +1,2 @@
# Prettier 3.4.2
9b0340a09276f93c054d705d1b9a5f24cc5dbc97

8
.github/CODEOWNERS vendored
View File

@ -1,3 +1,7 @@
* @cdr/code-server-reviewers
* @coder/code-server
ci/helm-chart @Matthew-Beckett @alexgorbatchev
ci/helm-chart/ @Matthew-Beckett @alexgorbatchev
docs/install.md @GNUxeava
src/node/i18n/locales/zh-cn.json @zhaozhiming

View File

@ -1,74 +0,0 @@
---
name: Bug report
about: Report a bug and help us improve
title: ""
labels: ""
assignees: ""
---
<!--
Hi there! 👋
Thanks for reporting a bug.
Please search for existing issues before filing, as they may contain additional
information about the problem and descriptions of workarounds. Provide as much
information as you can, so that we can reproduce the issue. Otherwise, we may
not be able to help diagnose the problem, and may close the issue as
unreproducible or incomplete. For visual defects, please include screenshots to
help us understand the issue.
-->
## OS/Web Information
- Web Browser:
- Local OS:
- Remote OS:
- Remote Architecture:
- `code-server --version`:
## Steps to Reproduce
1.
2.
3.
## Expected
<!-- What should happen? -->
## Actual
<!-- What actually happens? -->
## Logs
<!--
First run code-server with at least debug logging (or trace to be really
thorough) by setting the --log flag or the LOG_LEVEL environment variable. -vvv
and --verbose are aliases for --log trace. For example:
code-server --log debug
Once this is done, replicate the issue you're having then collect logging
information from the following places:
1. The most recent files from ~/.local/share/code-server/coder-logs.
2. The browser console.
3. The browser network tab.
Additionally, collecting core dumps (you may need to enable them first) if
code-server crashes can be helpful.
-->
## Screenshot
<!-- Ideally provide a screenshot, gif, video or screen recording. -->
## Notes
<!-- If you can reproduce the issue on vanilla VS Code,
please file the issue at the VS Code repository instead. -->
This issue can be reproduced in VS Code: Yes/No

126
.github/ISSUE_TEMPLATE/bug-report.yml vendored Normal file
View File

@ -0,0 +1,126 @@
name: Bug report
description: File a bug report
labels: ["bug", "triage"]
body:
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: OS/Web Information
description: |
examples:
- **Web Browser**: Chrome
- **Local OS**: macOS
- **Remote OS**: Ubuntu
- **Remote Architecture**: amd64
- **`code-server --version`**: 4.0.1
Please do not just put "latest" for the version.
value: |
- Web Browser:
- Local OS:
- Remote OS:
- Remote Architecture:
- `code-server --version`:
validations:
required: true
- type: textarea
attributes:
label: Steps to Reproduce
description: |
Please describe exactly how to reproduce the bug. For example:
1. Open code-server in Firefox
2. Install extension `foo.bar` from the extensions sidebar
3. Run command `foo.bar.baz`
value: |
1.
2.
3.
validations:
required: true
- type: textarea
attributes:
label: Expected
description: What should happen?
validations:
required: true
- type: textarea
attributes:
label: Actual
description: What actually happens?
validations:
required: true
- type: textarea
id: logs
attributes:
label: Logs
description: Run code-server with the --verbose flag and then paste any relevant logs from the server, from the browser console and/or the browser network tab. For issues with installation, include installation logs (i.e. output of `npm install -g code-server`).
render: shell
- type: textarea
attributes:
label: Screenshot/Video
description: Please include a screenshot, gif or screen recording of your issue.
validations:
required: false
- type: dropdown
attributes:
label: Does this bug reproduce in native VS Code?
description: If the bug reproduces in native VS Code, submit the issue upstream instead (https://github.com/microsoft/vscode).
options:
- Yes, this is also broken in native VS Code
- No, this works as expected in native VS Code
- This cannot be tested in native VS Code
- I did not test native VS Code
validations:
required: true
- type: dropdown
attributes:
label: Does this bug reproduce in VS Code web?
description: If the bug reproduces in VS Code web, submit the issue upstream instead (https://github.com/microsoft/vscode). You can run VS Code web with `code serve-web` (this is not the same as vscode.dev).
options:
- Yes, this is also broken in VS Code web
- No, this works as expected in VS Code web
- This cannot be tested in VS Code web
- I did not test VS Code web
validations:
required: true
- type: dropdown
attributes:
label: Does this bug reproduce in GitHub Codespaces?
description: If the bug reproduces in GitHub Codespaces, submit the issue upstream instead (https://github.com/microsoft/vscode).
options:
- Yes, this is also broken in GitHub Codespaces
- No, this works as expected in GitHub Codespaces
- This cannot be tested in GitHub Codespaces
- I did not test GitHub Codespaces
validations:
required: true
- type: checkboxes
attributes:
label: Are you accessing code-server over a secure context?
description: code-server relies on service workers (which only work in secure contexts) for many features. Double-check that you are using a secure context like HTTPS or localhost.
options:
- label: I am using a secure context.
required: false
- type: textarea
attributes:
label: Notes
description: Please include any addition notes that will help us resolve this issue.
validations:
required: false

View File

@ -1,8 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Question
url: https://github.com/cdr/code-server/discussions/new?category_id=22503114
- name: Question?
url: https://github.com/coder/code-server/discussions/new?category_id=22503114
about: Ask the community for help on our GitHub Discussions board
- name: Chat
about: Need immediate help or just want to talk? Hop in our Slack
- name: code-server Slack Community
about: Need immediate help or just want to talk? Hop in our Slack. Note - this Slack is not actively monitored by code-server maintainers.
url: https://cdr.co/join-community

View File

@ -1,7 +1,11 @@
---
name: Documentation improvement
about: Suggest a documentation improvement
title: ""
labels: "docs"
assignees: ""
---
## What is your suggestion?
## How will this improve the docs?
## Are you interested in submitting a PR for this?

View File

@ -1,18 +0,0 @@
---
name: Extension request
about: Request an extension missing from the code-server marketplace
title: ""
labels: extension-request
assignees: ""
---
<!--
Details on the code-server extension marketplace are at
https://github.com/cdr/code-server/blob/master/docs/FAQ.md#whats-the-deal-with-extensions
Please fill in the issue template!
-->
- [ ] Extension name:
- [ ] Extension GitHub or homepage:

View File

@ -1,13 +1,13 @@
---
name: Feature request
about: Suggest an idea
title: ""
labels: feature
assignees: ""
about: Suggest an idea to improve code-server
labels: enhancement
---
<!--
Please search for existing issues before filing.
## What is your suggestion?
Please describe the feature as clearly as possible!
-->
## Why do you want this feature?
## Are there any workarounds to get this functionality today?
## Are you interested in submitting a PR for this?

View File

@ -2,9 +2,7 @@
Please link to the issue this PR solves.
If there is no existing issue, please first create one unless the fix is minor.
Please make sure the base of your PR is the master branch!
Please make sure the base of your PR is the default branch!
-->
## Checklist
- [ ] updated `CHANGELOG.md`
Fixes #

View File

@ -1,18 +0,0 @@
<!-- Note: this variable $CODE_SERVER_VERSION_TO_UPDATE will be set when you run the release-prep.sh script with `yarn release:prep` -->
This PR is to generate a new release of `code-server` at `$CODE_SERVER_VERSION_TO_UPDATE`
## Screenshot
TODO
## TODOs
- [ ] test locally
- [ ] upload assets to draft release
- [ ] test one of the release packages locally
- [ ] double-check github release tag is the commit with artifacts (_note gets messed up after uploading assets_)
- [ ] publish release
- [ ] merge PR
- [ ] update the homebrew package
- [ ] update the AUR package

31
.github/codecov.yml vendored Normal file
View File

@ -0,0 +1,31 @@
codecov:
require_ci_to_pass: yes
allow_coverage_offsets: True
coverage:
precision: 2
round: down
range: "40...70"
status:
patch: off
notify:
slack:
default:
url: secret:v1::tXC7VwEIKYjNU8HRgRv2GdKOSCt5UzpykKZb+o1eCDqBgb2PEqwE3A26QUPYMLo4BO2qtrJhFIvwhUvlPwyzDCNGoNiuZfXr0UeZZ0y1TcZu672R/NBNMwEPO/e1Ye0pHxjzKHnuH7HqbjFucox/RBQLtiL3J56SWGE3JtbkC6o=
threshold: 1%
only_pulls: false
branches:
- "main"
parsers:
gcov:
branch_detection:
conditional: yes
loop: yes
method: no
macro: no
comment:
layout: "reach,diff,flags,files,footer"
behavior: default
require_changes: no

View File

@ -1,4 +1 @@
name: "code-server CodeQL config"
paths-ignore:
- lib/vscode

31
.github/dependabot.yaml vendored Normal file
View File

@ -0,0 +1,31 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "monthly"
time: "06:00"
timezone: "America/Chicago"
labels: []
commit-message:
prefix: "chore"
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "monthly"
time: "06:00"
timezone: "America/Chicago"
commit-message:
prefix: "chore"
labels: []
ignore:
# Ignore patch updates for all dependencies
- dependency-name: "*"
update-types:
- version-update:semver-patch
# Ignore major updates to Node.js types, because they need to
# correspond to the Node.js engine version
- dependency-name: "@types/node"
update-types:
- version-update:semver-major

View File

@ -1,27 +0,0 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
time: "11:00"
ignore:
# GitHub always delivers the latest versions for each major
# release tag, so handle updates manually
- dependency-name: "actions/*"
- dependency-name: "github/codeql-action/*"
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"
time: "11:00"
ignore:
- dependency-name: "@types/node"
versions: ["15.x", "14.x", "13.x"]
- dependency-name: "xdg-basedir"
# 5.0.0 has breaking changes as they switch to named exports
# and convert the module to ESM
# We can't use it until we switch to ESM across the project
# See release notes: https://github.com/sindresorhus/xdg-basedir/releases/tag/v5.0.0
versions: ["5.x"]

37
.github/lock.yml vendored
View File

@ -1,37 +0,0 @@
# Configuration for Lock Threads - https://github.com/dessant/lock-threads-app
# Number of days of inactivity before a closed issue or pull request is locked
daysUntilLock: 90
# Skip issues and pull requests created before a given timestamp. Timestamp must
# follow ISO 8601 (`YYYY-MM-DD`). Set to `false` to disable
skipCreatedBefore: false
# Issues and pull requests with these labels will be ignored. Set to `[]` to disable
exemptLabels: []
# Label to add before locking, such as `outdated`. Set to `false` to disable
lockLabel: false
# Comment to post before locking. Set to `false` to disable
lockComment: >
This thread has been automatically locked since there has not been
any recent activity after it was closed. Please open a new issue for
related bugs.
# Assign `resolved` as the reason for locking. Set to `false` to disable
setLockReason: true
# Limit to only `issues` or `pulls`
# only: issues
# Optionally, specify configuration settings just for `issues` or `pulls`
# issues:
# exemptLabels:
# - help-wanted
# lockLabel: outdated
# pulls:
# daysUntilLock: 30
# Repository to extend settings from
# _extends: repo

45
.github/ranger.yml vendored
View File

@ -1,45 +0,0 @@
# Configuration for the repo ranger bot
# See docs: https://www.notion.so/Documentation-8d7627bb1f3c42b7b1820e8d6f157a57#9879d1374fab4d1f9c607c230fd5123d
default:
close:
# Default time to wait before closing the label. Can either be a number in milliseconds
# or a string specified by the `ms` package (https://www.npmjs.com/package/ms)
delay: "2 days"
# Default comment to post when an issue is first marked with a closing label
comment: "⚠️ This issue has been marked $LABEL and will be closed in $DELAY."
labels:
duplicate: close
wontfix: close
"squash when passing": merge
"rebase when passing": merge
"merge when passing": merge
stale:
action: close
delay: 7 days
comment: "⚠️ This issue has been marked stale and will automatically be closed in $DELAY."
"new contributor":
action: comment
delay: 5s
message: "Thanks for making your first contribution! :slightly_smiling_face:"
extension-request:
action: close
delay: 5s
comment: >
Thanks for opening an extension request!
We are currently in the process of switching extension
marketplaces and transitioning over to [Open VSX](https://open-vsx.org/).
Once https://github.com/eclipse/openvsx/issues/249 is implemented, we
can fully make this transition. Therefore, we are no longer accepting
new requests for extension requests. We suggest installing the VSIX
file and then installing into code-server as a temporary workaround.
See [docs](https://github.com/cdr/code-server/blob/main/docs/FAQ.md#installing-vsix-extensions-via-the-command-line) for more info.
"upstream:vscode":
action: close
delay: 5s
comment: >
This issue has been marked as 'upstream:vscode'.
Please file this upstream: [link to open issue](https://github.com/microsoft/vscode/issues/new/choose)
This issue will automatically close in $DELAY.

66
.github/semantic.yaml vendored Normal file
View File

@ -0,0 +1,66 @@
###############################################################################
# This file configures "Semantic Pull Requests", which is documented here:
# https://github.com/zeke/semantic-pull-requests
###############################################################################
# Scopes are optionally supplied after a 'type'. For example, in
#
# feat(docs): autostart ui
#
# '(docs)' is the scope. Scopes are used to signify where the change occurred.
scopes:
# docs: changes to the code-server documentation.
- docs
# vendor: changes to vendored dependencies.
- vendor
# deps: changes to code-server's dependencies.
- deps
# cs: changes to code specific to code-server.
- cs
# cli: changes to the command-line interface.
- cli
# We only check that the PR title is semantic. The PR title is automatically
# applied to the "Squash & Merge" flow as the suggested commit message, so this
# should suffice unless someone drastically alters the message in that flow.
titleOnly: true
# Types are the 'tag' types in a commit or PR title. For example, in
#
# chore: fix thing
#
# 'chore' is the type.
types:
# A build of any kind.
- build
# A user-facing change that corrects a defect in code-server.
- fix
# Any code task that is ignored for changelog purposes. Examples include
# devbin scripts and internal-only configurations.
- chore
# Any work performed on CI.
- ci
# Work that directly implements or supports the implementation of a feature.
- feat
# A refactor changes code structure without any behavioral change.
- refactor
# A git revert for any style of commit.
- revert
# Adding tests of any kind. Should be separate from feature or fix
# implementations. For example, if a commit adds a fix + test, it's a fix
# commit. If a commit is simply bumping coverage, it's a test commit.
- test
# A new release.
- release

12
.github/stale.yml vendored Normal file
View File

@ -0,0 +1,12 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 180
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 5
# Label to apply when stale.
staleLabel: stale
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no activity occurs in the next 5 days.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false

311
.github/workflows/build.yaml vendored Normal file
View File

@ -0,0 +1,311 @@
name: Build
on:
push:
branches:
- main
pull_request:
branches:
- main
# Cancel in-progress runs for pull requests when developers push
# additional changes, and serialize builds in branches.
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-concurrency-to-cancel-any-in-progress-job-or-run
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
# Note: if: success() is used in several jobs -
# this ensures that it only executes if all previous jobs succeeded.
# if: steps.cache-node-modules.outputs.cache-hit != 'true'
# will skip running `npm install` if it successfully fetched from cache
jobs:
changes:
runs-on: ubuntu-latest
outputs:
ci: ${{ steps.filter.outputs.ci }}
code: ${{ steps.filter.outputs.code }}
deps: ${{ steps.filter.outputs.deps }}
docs: ${{ steps.filter.outputs.docs }}
helm: ${{ steps.filter.outputs.helm }}
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Check changed files
uses: dorny/paths-filter@v3
id: filter
with:
filters: |
ci:
- ".github/**"
- "ci/**"
docs:
- "docs/**"
- "README.md"
- "CHANGELOG.md"
helm:
- "ci/helm-chart/**"
code:
- "src/**"
- "test/**"
deps:
- "lib/**"
- "patches/**"
- "package-lock.json"
- "test/package-lock.json"
- id: debug
run: |
echo "${{ toJSON(steps.filter )}}"
prettier:
name: Run prettier check
runs-on: ubuntu-22.04
timeout-minutes: 5
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- run: npx prettier --check .
doctoc:
name: Doctoc markdown files
runs-on: ubuntu-22.04
timeout-minutes: 5
needs: changes
if: needs.changes.outputs.docs == 'true'
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- run: npm run doctoc
lint-helm:
name: Lint Helm chart
runs-on: ubuntu-22.04
timeout-minutes: 5
needs: changes
if: needs.changes.outputs.helm == 'true'
steps:
- uses: actions/checkout@v6
- uses: azure/setup-helm@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
- run: helm plugin install https://github.com/instrumenta/helm-kubeval
- run: helm kubeval ci/helm-chart
lint-ts:
name: Lint TypeScript files
runs-on: ubuntu-22.04
timeout-minutes: 5
needs: changes
if: needs.changes.outputs.code == 'true'
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- run: npm run lint:ts
lint-actions:
name: Lint GitHub Actions
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.ci == 'true'
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Check workflow files
run: |
bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash) 1.7.9
./actionlint -color -shellcheck= -ignore "softprops/action-gh-release"
shell: bash
test-unit:
name: Run unit tests
runs-on: ubuntu-22.04
timeout-minutes: 5
needs: changes
if: needs.changes.outputs.code == 'true'
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- run: npm run test:unit
- uses: codecov/codecov-action@v5
if: success()
with:
token: ${{ secrets.CODECOV_TOKEN }}
build:
name: Build code-server
runs-on: ubuntu-22.04
timeout-minutes: 70
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
DISABLE_V8_COMPILE_CACHE: 1
steps:
- uses: actions/checkout@v6
with:
submodules: true
- run: sudo apt update && sudo apt install -y libkrb5-dev
- uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: quilt
version: 1.0
- run: quilt push -a
- uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- run: npm run build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# Get Code's git hash. When this changes it means the content is
# different and we need to rebuild.
- name: Get latest lib/vscode rev
id: vscode-rev
run: echo "rev=$(git rev-parse HEAD:./lib/vscode)" >> $GITHUB_OUTPUT
# We need to rebuild when we have a new version of Code, when any of
# the patches changed, or when the code-server version changes (since
# it gets embedded into the code). Use VSCODE_CACHE_VERSION to
# force a rebuild.
- name: Fetch prebuilt Code package from cache
id: cache-vscode
uses: actions/cache@v4
with:
path: lib/vscode-reh-web-*
key: vscode-reh-package-${{ secrets.VSCODE_CACHE_VERSION }}-${{ steps.vscode-rev.outputs.rev }}-${{ hashFiles('patches/*.diff', 'ci/build/build-vscode.sh') }}
- name: Build vscode
env:
VERSION: "0.0.0"
if: steps.cache-vscode.outputs.cache-hit != 'true'
run: |
pushd lib/vscode
npm ci
popd
npm run build:vscode
# The release package does not contain any native modules
# and is neutral to architecture/os/libc version.
- run: npm run release
if: success()
# https://github.com/actions/upload-artifact/issues/38
- run: tar -czf package.tar.gz release
- uses: actions/upload-artifact@v4
with:
name: npm-package
path: ./package.tar.gz
test-e2e:
name: Run e2e tests
runs-on: ubuntu-22.04
timeout-minutes: 25
needs: [changes, build]
if: needs.changes.outputs.code == 'true' || needs.changes.outputs.deps == 'true'
steps:
- uses: actions/checkout@v6
- run: sudo apt update && sudo apt install -y libkrb5-dev
- uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- uses: actions/download-artifact@v5
with:
name: npm-package
- run: tar -xzf package.tar.gz
- run: cd release && npm install --unsafe-perm --omit=dev
- name: Install Playwright OS dependencies
run: |
./test/node_modules/.bin/playwright install-deps
./test/node_modules/.bin/playwright install
- run: CODE_SERVER_TEST_ENTRY=./release npm run test:e2e
- uses: actions/upload-artifact@v4
if: always()
with:
name: failed-test-videos
path: ./test/test-results
- run: rm -rf ./release ./test/test-results
test-e2e-proxy:
name: Run e2e tests behind proxy
runs-on: ubuntu-22.04
timeout-minutes: 25
needs: [changes, build]
if: needs.changes.outputs.code == 'true' || needs.changes.outputs.deps == 'true'
steps:
- uses: actions/checkout@v6
- run: sudo apt update && sudo apt install -y libkrb5-dev
- uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- uses: actions/download-artifact@v5
with:
name: npm-package
- run: tar -xzf package.tar.gz
- run: cd release && npm install --unsafe-perm --omit=dev
- name: Install Playwright OS dependencies
run: |
./test/node_modules/.bin/playwright install-deps
./test/node_modules/.bin/playwright install
- name: Cache Caddy
uses: actions/cache@v4
id: caddy-cache
with:
path: |
~/.cache/caddy
key: cache-caddy-2.5.2
- name: Install Caddy
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
if: steps.caddy-cache.outputs.cache-hit != 'true'
run: |
gh release download v2.5.2 --repo caddyserver/caddy --pattern "caddy_2.5.2_linux_amd64.tar.gz"
mkdir -p ~/.cache/caddy
tar -xzf caddy_2.5.2_linux_amd64.tar.gz --directory ~/.cache/caddy
- run: ~/.cache/caddy/caddy start --config ./ci/Caddyfile
- run: CODE_SERVER_TEST_ENTRY=./release npm run test:e2e:proxy
- run: ~/.cache/caddy/caddy stop --config ./ci/Caddyfile
if: always()
- uses: actions/upload-artifact@v4
if: always()
with:
name: failed-test-videos-proxy
path: ./test/test-results

View File

@ -1,490 +0,0 @@
name: ci
on:
push:
branches:
- main
pull_request:
branches:
- main
# Note: if: success() is used in several jobs -
# this ensures that it only executes if all previous jobs succeeded.
# if: steps.cache-yarn.outputs.cache-hit != 'true'
# will skip running `yarn install` if it successfully fetched from cache
jobs:
prebuild:
name: Pre-build checks
runs-on: ubuntu-latest
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
steps:
- name: Checkout repo
uses: actions/checkout@v2
- name: Install Node.js v12
uses: actions/setup-node@v2
with:
node-version: "12"
- name: Install helm
uses: azure/setup-helm@v1.1
- name: Fetch dependencies from cache
id: cache-yarn
uses: actions/cache@v2
with:
path: "**/node_modules"
key: yarn-build-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
if: steps.cache-yarn.outputs.cache-hit != 'true'
run: yarn --frozen-lockfile
- name: Run yarn fmt
run: yarn fmt
if: success()
- name: Run yarn lint
run: yarn lint
if: success()
- name: Run code-server unit tests
run: yarn test:unit
if: success()
- name: Upload coverage report to Codecov
run: yarn coverage
if: success()
audit-ci:
name: Run audit-ci
needs: prebuild
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v2
- name: Install Node.js v12
uses: actions/setup-node@v2
with:
node-version: "12"
- name: Fetch dependencies from cache
id: cache-yarn
uses: actions/cache@v2
with:
path: "**/node_modules"
key: yarn-build-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
if: steps.cache-yarn.outputs.cache-hit != 'true'
run: yarn --frozen-lockfile
- name: Audit for vulnerabilities
run: yarn _audit
if: success()
build:
name: Build
needs: prebuild
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Install Node.js v12
uses: actions/setup-node@v2
with:
node-version: "12"
- name: Fetch dependencies from cache
id: cache-yarn
uses: actions/cache@v2
with:
path: "**/node_modules"
key: yarn-build-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
if: steps.cache-yarn.outputs.cache-hit != 'true'
run: yarn --frozen-lockfile
- name: Build code-server
run: yarn build
# Parse the hash of the latest commit inside lib/vscode
# use this to avoid rebuilding it if nothing changed
# How it works: the `git log` command fetches the hash of the last commit
# that changed a file inside `lib/vscode`. If a commit changes any file in there,
# the hash returned will change, and we rebuild vscode. If the hash did not change,
# (for example, a change to `src/` or `docs/`), we reuse the same build as last time.
# This saves a lot of time in CI, as compiling VSCode can take anywhere from 5-10 minutes.
- name: Get latest lib/vscode rev
id: vscode-rev
run: echo "::set-output name=rev::$(git log -1 --format='%H' ./lib/vscode)"
- name: Attempt to fetch vscode build from cache
id: cache-vscode
uses: actions/cache@v2
with:
path: |
lib/vscode/.build
lib/vscode/out-build
lib/vscode/out-vscode
lib/vscode/out-vscode-min
key: vscode-build-${{ steps.vscode-rev.outputs.rev }}
- name: Build vscode
if: steps.cache-vscode.outputs.cache-hit != 'true'
run: yarn build:vscode
# The release package does not contain any native modules
# and is neutral to architecture/os/libc version.
- name: Create release package
run: yarn release
if: success()
# https://github.com/actions/upload-artifact/issues/38
- name: Compress release package
run: tar -czf package.tar.gz release
- name: Upload npm package artifact
uses: actions/upload-artifact@v2
with:
name: npm-package
path: ./package.tar.gz
# TODO: cache building yarn --production
# possibly 2m30s of savings(?)
# this requires refactoring our release scripts
package-linux-amd64:
name: x86-64 Linux build
needs: build
runs-on: ubuntu-latest
container: "centos:7"
steps:
- uses: actions/checkout@v2
- name: Install Node.js v12
uses: actions/setup-node@v2
with:
node-version: "12"
- name: Install development tools
run: |
yum install -y epel-release centos-release-scl
yum install -y devtoolset-9-{make,gcc,gcc-c++} jq rsync
- name: Install nfpm and envsubst
run: |
curl -sfL https://install.goreleaser.com/github.com/goreleaser/nfpm.sh | sh -s -- -b ~/.local/bin v2.3.1
curl -L https://github.com/a8m/envsubst/releases/download/v1.1.0/envsubst-`uname -s`-`uname -m` -o envsubst
chmod +x envsubst
mv envsubst ~/.local/bin
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Install yarn
run: npm install -g yarn
- name: Download npm package
uses: actions/download-artifact@v2
with:
name: npm-package
- name: Decompress npm package
run: tar -xzf package.tar.gz
# NOTE: && here is deliberate - GitHub puts each line in its own `.sh`
# file when running inside a docker container.
- name: Build standalone release
run: source scl_source enable devtoolset-9 && yarn release:standalone
- name: Sanity test standalone release
run: yarn test:standalone-release
- name: Build packages with nfpm
run: yarn package
- name: Upload release artifacts
uses: actions/upload-artifact@v2
with:
name: release-packages
path: ./release-packages
# NOTE@oxy:
# We use Ubuntu 16.04 here, so that our build is more compatible
# with older libc versions. We used to (Q1'20) use CentOS 7 here,
# but it has a full update EOL of Q4'20 and a 'critical security'
# update EOL of 2024. We're dropping full support a few years before
# the final EOL, but I don't believe CentOS 7 has a large arm64 userbase.
# It is not feasible to cross-compile with CentOS.
# Cross-compile notes: To compile native dependencies for arm64,
# we install the aarch64 cross toolchain and then set it as the default
# compiler/linker/etc. with the AR/CC/CXX/LINK environment variables.
# qemu-user-static on ubuntu-16.04 currently doesn't run Node correctly,
# so we just build with "native"/x86_64 node, then download arm64 node
# and then put it in our release. We can't smoke test the arm64 build this way,
# but this means we don't need to maintain a self-hosted runner!
package-linux-arm64:
name: Linux ARM64 cross-compile build
needs: build
runs-on: ubuntu-16.04
env:
AR: aarch64-linux-gnu-ar
CC: aarch64-linux-gnu-gcc
CXX: aarch64-linux-gnu-g++
LINK: aarch64-linux-gnu-g++
NPM_CONFIG_ARCH: arm64
steps:
- uses: actions/checkout@v2
- name: Install Node.js v12
uses: actions/setup-node@v2
with:
node-version: "12"
- name: Install nfpm
run: |
curl -sfL https://install.goreleaser.com/github.com/goreleaser/nfpm.sh | sh -s -- -b ~/.local/bin v2.3.1
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Install cross-compiler
run: sudo apt install g++-aarch64-linux-gnu
- name: Download npm package
uses: actions/download-artifact@v2
with:
name: npm-package
- name: Decompress npm package
run: tar -xzf package.tar.gz
- name: Build standalone release
run: yarn release:standalone
- name: Replace node with arm64 equivalent
run: |
wget https://nodejs.org/dist/v12.18.4/node-v12.18.4-linux-arm64.tar.gz
tar -xzf node-v12.18.4-linux-arm64.tar.gz node-v12.18.4-linux-arm64/bin/node --strip-components=2
mv ./node ./release-standalone/lib/node
- name: Build packages with nfpm
run: yarn package arm64
- name: Upload release artifacts
uses: actions/upload-artifact@v2
with:
name: release-packages
path: ./release-packages
package-macos-amd64:
name: x86-64 macOS build
needs: build
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Install Node.js v12
uses: actions/setup-node@v2
with:
node-version: "12"
- name: Install nfpm
run: |
curl -sfL https://install.goreleaser.com/github.com/goreleaser/nfpm.sh | sh -s -- -b ~/.local/bin v2.3.1
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Download npm package
uses: actions/download-artifact@v2
with:
name: npm-package
- name: Decompress npm package
run: tar -xzf package.tar.gz
- name: Build standalone release
run: yarn release:standalone
- name: Sanity test standalone release
run: yarn test:standalone-release
- name: Build packages with nfpm
run: yarn package
- name: Upload release artifacts
uses: actions/upload-artifact@v2
with:
name: release-packages
path: ./release-packages
test-e2e:
name: End-to-end tests
needs: package-linux-amd64
runs-on: ubuntu-latest
env:
PASSWORD: e45432jklfdsab
CODE_SERVER_ADDRESS: http://localhost:8080
steps:
- uses: actions/checkout@v2
- name: Install Node.js v12
uses: actions/setup-node@v2
with:
node-version: "12"
- name: Install playwright
uses: microsoft/playwright-github-action@v1
- name: Fetch dependencies from cache
id: cache-yarn
uses: actions/cache@v2
with:
path: "**/node_modules"
key: yarn-build-${{ hashFiles('**/yarn.lock') }}
- name: Download release packages
uses: actions/download-artifact@v2
with:
name: release-packages
path: ./release-packages
- name: Untar code-server file
run: |
cd release-packages && tar -xzf code-server*-linux-amd64.tar.gz
- name: Install dependencies
if: steps.cache-yarn.outputs.cache-hit != 'true'
run: yarn --frozen-lockfile
# HACK: this shouldn't need to exist, but put it here anyway
# in an attempt to solve Playwright cache failures.
- name: Reinstall playwright
if: steps.cache-yarn.outputs.cache-hit == 'true'
run: |
cd test/
rm -r node_modules/playwright
yarn install --check-files
- name: Run end-to-end tests
run: |
./release-packages/code-server*-linux-amd64/bin/code-server --log trace &
yarn test:e2e
- name: Upload test artifacts
if: always()
uses: actions/upload-artifact@v2
with:
name: failed-test-videos
path: ./test/test-results
- name: Remove release packages and test artifacts
run: rm -rf ./release-packages ./test/test-results
docker-amd64:
runs-on: ubuntu-latest
needs: package-linux-amd64
steps:
- uses: actions/checkout@v2
- name: Download release package
uses: actions/download-artifact@v2
with:
name: release-packages
path: ./release-packages
- name: Run ./ci/steps/build-docker-image.sh
run: ./ci/steps/build-docker-image.sh
- name: Upload release image
uses: actions/upload-artifact@v2
with:
name: release-images
path: ./release-images
# TODO: this is the last place where we use our self-hosted arm64 runner.
# In the future, consider switching to docker buildx + qemu,
# thus removing the requirement for us to maintain the runner.
docker-arm64:
runs-on: ubuntu-arm64-latest
needs: package-linux-arm64
steps:
- uses: actions/checkout@v2
- name: Download release package
uses: actions/download-artifact@v2
with:
name: release-packages
path: ./release-packages
- name: Run ./ci/steps/build-docker-image.sh
run: ./ci/steps/build-docker-image.sh
- name: Upload release image
uses: actions/upload-artifact@v2
with:
name: release-images
path: ./release-images
trivy-scan-image:
runs-on: ubuntu-20.04
needs: docker-amd64
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Download release images
uses: actions/download-artifact@v2
with:
name: release-images
path: ./release-images
- name: Run Trivy vulnerability scanner in image mode
# Commit SHA for v0.0.14
uses: aquasecurity/trivy-action@341f810bd602419f966a081da3f4debedc3e5c8e
with:
input: "./release-images/code-server-amd64-*.tar"
scan-type: "image"
ignore-unfixed: true
format: "template"
template: "@/contrib/sarif.tpl"
output: "trivy-image-results.sarif"
severity: "HIGH,CRITICAL"
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@v1
with:
sarif_file: "trivy-image-results.sarif"
# We have to use two trivy jobs
# because GitHub only allows
# codeql/upload-sarif action per job
trivy-scan-repo:
runs-on: ubuntu-20.04
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Run Trivy vulnerability scanner in repo mode
# Commit SHA for v0.0.14
uses: aquasecurity/trivy-action@341f810bd602419f966a081da3f4debedc3e5c8e
with:
scan-type: "fs"
scan-ref: "."
ignore-unfixed: true
format: "template"
template: "@/contrib/sarif.tpl"
output: "trivy-repo-results.sarif"
severity: "HIGH,CRITICAL"
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@v1
with:
sarif_file: "trivy-repo-results.sarif"

View File

@ -1,33 +0,0 @@
name: "Code Scanning"
on:
push:
branches: [main]
pull_request:
# The branches below must be a subset of the branches above
branches: [main]
schedule:
# Runs every Monday morning PST
- cron: "17 15 * * 1"
jobs:
analyze:
name: Analyze
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/checkout@v2
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
config-file: ./.github/codeql-config.yml
languages: javascript
- name: Autobuild
uses: github/codeql-action/autobuild@v1
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1

76
.github/workflows/installer.yaml vendored Normal file
View File

@ -0,0 +1,76 @@
name: Installer integration
on:
push:
branches:
- main
paths:
- "install.sh"
- ".github/workflows/installer.yaml"
pull_request:
branches:
- main
paths:
- "install.sh"
- ".github/workflows/installer.yaml"
# Cancel in-progress runs for pull requests when developers push
# additional changes, and serialize builds in branches.
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-concurrency-to-cancel-any-in-progress-job-or-run
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
permissions:
contents: read
jobs:
ubuntu:
name: Test installer on Ubuntu
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Install code-server
run: ./install.sh
- name: Test code-server was installed globally
run: code-server --help
alpine:
name: Test installer on Alpine
runs-on: ubuntu-latest
container: "alpine:3.17"
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Install curl
run: apk add curl
- name: Add user
run: adduser coder --disabled-password
# Standalone should work without root.
- name: Test standalone to a non-existent prefix
run: su coder -c "./install.sh --method standalone --prefix /tmp/does/not/yet/exist"
# We do not actually have Alpine standalone builds so running code-server
# will not work.
- name: Test code-server was installed to prefix
run: test -f /tmp/does/not/yet/exist/bin/code-server
macos:
name: Test installer on macOS
runs-on: macos-latest
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Install code-server
run: ./install.sh
- name: Test code-server was installed globally
run: code-server --help

View File

@ -1,53 +1,166 @@
name: publish
name: Publish code-server
on:
# Shows the manual trigger in GitHub UI
# helpful as a back-up in case the GitHub Actions Workflow fails
workflow_dispatch:
inputs:
version:
description: The version to publish (include "v", i.e. "v4.9.1").
type: string
required: true
release:
types: [published]
types: [released]
# Cancel in-progress runs for pull requests when developers push
# additional changes, and serialize builds in branches.
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-concurrency-to-cancel-any-in-progress-job-or-run
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
jobs:
# NOTE: this job requires curl, jq and yarn
# All of them are included in ubuntu-latest.
npm:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Checkout code-server
uses: actions/checkout@v6
- name: Run ./ci/steps/publish-npm.sh
run: ./ci/steps/publish-npm.sh
- name: Install Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
- name: Download npm package from release artifacts
uses: robinraju/release-downloader@v1.12
with:
repository: "coder/code-server"
tag: ${{ github.event.inputs.version || github.ref_name }}
fileName: "package.tar.gz"
out-file-path: "release-npm-package"
# Strip out the v (v4.9.1 -> 4.9.1).
- name: Get and set VERSION
run: |
TAG="${{ github.event.inputs.version || github.ref_name }}"
echo "VERSION=${TAG#v}" >> $GITHUB_ENV
- run: npm run publish:npm
env:
VERSION: ${{ env.VERSION }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
NPM_ENVIRONMENT: "production"
aur:
runs-on: ubuntu-latest
timeout-minutes: 10
env:
GH_TOKEN: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
steps:
# We need to checkout code-server so we can get the version
- name: Checkout code-server
uses: actions/checkout@v6
with:
fetch-depth: 0
path: "./code-server"
- name: Checkout code-server-aur repo
uses: actions/checkout@v6
with:
repository: "cdrci/code-server-aur"
token: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
ref: "master"
- name: Merge in master
run: |
git remote add upstream https://github.com/coder/code-server-aur.git
git fetch upstream
git merge upstream/master
- name: Configure git
run: |
git config --global user.name cdrci
git config --global user.email opensource@coder.com
# Strip out the v (v4.9.1 -> 4.9.1).
- name: Get and set VERSION
run: |
TAG="${{ github.event.inputs.version || github.ref_name }}"
echo "VERSION=${TAG#v}" >> $GITHUB_ENV
- name: Validate package
uses: heyhusen/archlinux-package-action@v2.4.0
env:
VERSION: ${{ env.VERSION }}
with:
pkgver: ${{ env.VERSION }}
updpkgsums: true
srcinfo: true
- name: Open PR
# We need to git push -u otherwise gh will prompt
# asking where to push the branch.
env:
VERSION: ${{ env.VERSION }}
run: |
git checkout -b update-version-${{ env.VERSION }}
git add .
git commit -m "chore: updating version to ${{ env.VERSION }}"
git push -u origin $(git branch --show)
gh pr create --repo coder/code-server-aur --title "chore: bump version to ${{ env.VERSION }}" --body "PR opened by @$GITHUB_ACTOR" --assignee $GITHUB_ACTOR
# NOTE: this job requires curl, jq and docker
# All of them are included in ubuntu-latest.
docker:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Checkout code-server
uses: actions/checkout@v6
- name: Run ./ci/steps/push-docker-manifest.sh
run: ./ci/steps/push-docker-manifest.sh
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
homebrew:
# The newest version of code-server needs to be available on npm when this runs
# otherwise, it will 404 and won't open a PR to bump version on homebrew/homebrew-core
needs: npm
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Configure git
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
# Strip out the v (v4.9.1 -> 4.9.1).
- name: Get and set VERSION
run: |
git config user.name github-actions
git config user.email github-actions@github.com
- name: Bump code-server homebrew version
TAG="${{ github.event.inputs.version || github.ref_name }}"
echo "VERSION=${TAG#v}" >> $GITHUB_ENV
- name: Download deb artifacts
uses: robinraju/release-downloader@v1.12
with:
repository: "coder/code-server"
tag: v${{ env.VERSION }}
fileName: "*.deb"
out-file-path: "release-packages"
- name: Download rpm artifacts
uses: robinraju/release-downloader@v1.12
with:
repository: "coder/code-server"
tag: v${{ env.VERSION }}
fileName: "*.rpm"
out-file-path: "release-packages"
- name: Publish to Docker
run: ./ci/steps/docker-buildx-push.sh
env:
HOMEBREW_GITHUB_API_TOKEN: ${{secrets.HOMEBREW_GITHUB_API_TOKEN}}
run: ./ci/steps/brew-bump.sh
VERSION: ${{ env.VERSION }}
GITHUB_TOKEN: ${{ github.token }}

309
.github/workflows/release.yaml vendored Normal file
View File

@ -0,0 +1,309 @@
name: Draft release
on:
workflow_dispatch:
inputs:
version:
description: The version to publish (include "v", i.e. "v4.9.1").
type: string
required: true
permissions:
contents: write # For creating releases.
discussions: write # For creating a discussion.
# Cancel in-progress runs for pull requests when developers push
# additional changes
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
jobs:
package-linux-cross:
name: ${{ matrix.prefix }}
runs-on: ubuntu-latest
timeout-minutes: 15
needs: npm-version
container: "python:3.8-slim-buster"
strategy:
matrix:
include:
- prefix: x86_64-linux-gnu
npm_arch: x64
apt_arch: amd64
package_arch: amd64
- prefix: aarch64-linux-gnu
npm_arch: arm64
apt_arch: arm64
package_arch: arm64
- prefix: arm-linux-gnueabihf
npm_arch: armv7l
apt_arch: armhf
package_arch: armv7l
env:
AR: ${{ format('{0}-ar', matrix.prefix) }}
AS: ${{ format('{0}-as', matrix.prefix) }}
CC: ${{ format('{0}-gcc', matrix.prefix) }}
CPP: ${{ format('{0}-cpp', matrix.prefix) }}
CXX: ${{ format('{0}-g++', matrix.prefix) }}
FC: ${{ format('{0}-gfortran', matrix.prefix) }}
LD: ${{ format('{0}-ld', matrix.prefix) }}
STRIP: ${{ format('{0}-strip', matrix.prefix) }}
PKG_CONFIG_PATH: ${{ format('/usr/lib/{0}/pkgconfig', matrix.prefix) }}
TARGET_ARCH: ${{ matrix.apt_arch }}
npm_config_arch: ${{ matrix.npm_arch }}
PKG_ARCH: ${{ matrix.package_arch }}
# Not building from source results in an x86_64 argon2, as if
# npm_config_arch is being ignored.
npm_config_build_from_source: true
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Install Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- name: Install cross-compiler and system dependencies
run: |
sed -i 's/deb\.debian\.org/archive.debian.org/g' /etc/apt/sources.list
dpkg --add-architecture $TARGET_ARCH
apt update && apt install -y --no-install-recommends \
crossbuild-essential-$TARGET_ARCH \
libx11-dev:$TARGET_ARCH \
libx11-xcb-dev:$TARGET_ARCH \
libxkbfile-dev:$TARGET_ARCH \
libsecret-1-dev:$TARGET_ARCH \
libkrb5-dev:$TARGET_ARCH \
ca-certificates \
curl wget rsync gettext-base
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- name: Install nfpm
run: |
mkdir -p ~/.local/bin
curl -sSfL https://github.com/goreleaser/nfpm/releases/download/v2.3.1/nfpm_2.3.1_`uname -s`_`uname -m`.tar.gz | tar -C ~/.local/bin -zxv nfpm
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Download npm package
uses: actions/download-artifact@v5
with:
name: npm-release-package
- run: tar -xzf package.tar.gz
- run: npm run release:standalone
- name: Replace node with cross-compile equivalent
run: |
node_version=$(node --version)
wget https://nodejs.org/dist/${node_version}/node-${node_version}-linux-${npm_config_arch}.tar.xz
tar -xf node-${node_version}-linux-${npm_config_arch}.tar.xz node-${node_version}-linux-${npm_config_arch}/bin/node --strip-components=2
mv ./node ./release-standalone/lib/node
# Strip out the v (v4.9.1 -> 4.9.1).
- name: Get and set VERSION
run: |
TAG="${{ inputs.version || github.ref_name }}"
echo "VERSION=${TAG#v}" >> $GITHUB_ENV
- env:
VERSION: ${{ env.VERSION }}
run: npm run package $PKG_ARCH
- uses: softprops/action-gh-release@v1
with:
draft: true
discussion_category_name: "📣 Announcements"
files: ./release-packages/*
package-macos-amd64:
name: x86-64 macOS build
runs-on: macos-15-intel
timeout-minutes: 15
needs: npm-version
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Install Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- name: Install nfpm
run: |
mkdir -p ~/.local/bin
curl -sSfL https://github.com/goreleaser/nfpm/releases/download/v2.3.1/nfpm_2.3.1_`uname -s`_`uname -m`.tar.gz | tar -C ~/.local/bin -zxv nfpm
echo "$HOME/.local/bin" >> $GITHUB_PATH
# The version of node-gyp we use depends on distutils but it was removed
# in Python 3.12. It seems to be fixed in the latest node-gyp so when we
# next update Node we can probably remove this. For now, install
# setuptools since it contains distutils.
- run: brew install python-setuptools
- name: Download npm package
uses: actions/download-artifact@v5
with:
name: npm-release-package
- run: tar -xzf package.tar.gz
- run: npm run release:standalone
- run: npm run test:native
# Strip out the v (v4.9.1 -> 4.9.1).
- name: Get and set VERSION
run: |
TAG="${{ inputs.version || github.ref_name }}"
echo "VERSION=${TAG#v}" >> $GITHUB_ENV
- name: Build packages with nfpm
env:
VERSION: ${{ env.VERSION }}
run: npm run package
- uses: softprops/action-gh-release@v1
with:
draft: true
discussion_category_name: "📣 Announcements"
files: ./release-packages/*
package-macos-arm64:
name: arm64 macOS build
runs-on: macos-latest
timeout-minutes: 15
needs: npm-version
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Install Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: |
package-lock.json
test/package-lock.json
- run: SKIP_SUBMODULE_DEPS=1 npm ci
- name: Install nfpm
run: |
mkdir -p ~/.local/bin
curl -sSfL https://github.com/goreleaser/nfpm/releases/download/v2.3.1/nfpm_2.3.1_`uname -s`_`uname -m`.tar.gz | tar -C ~/.local/bin -zxv nfpm
echo "$HOME/.local/bin" >> $GITHUB_PATH
# The version of node-gyp we use depends on distutils but it was removed
# in Python 3.12. It seems to be fixed in the latest node-gyp so when we
# next update Node we can probably remove this. For now, install
# setuptools since it contains distutils.
- run: brew install python-setuptools
- name: Download npm package
uses: actions/download-artifact@v5
with:
name: npm-release-package
- run: tar -xzf package.tar.gz
- run: npm run release:standalone
- run: npm run test:native
# Strip out the v (v4.9.1 -> 4.9.1).
- name: Get and set VERSION
run: |
TAG="${{ inputs.version || github.ref_name }}"
echo "VERSION=${TAG#v}" >> $GITHUB_ENV
- name: Build packages with nfpm
env:
VERSION: ${{ env.VERSION }}
run: npm run package
- uses: softprops/action-gh-release@v1
with:
draft: true
discussion_category_name: "📣 Announcements"
files: ./release-packages/*
npm-package:
name: Upload npm package
runs-on: ubuntu-latest
timeout-minutes: 15
needs: npm-version
steps:
- name: Download npm package
uses: actions/download-artifact@v5
with:
name: npm-release-package
- uses: softprops/action-gh-release@v1
with:
draft: true
discussion_category_name: "📣 Announcements"
files: ./package.tar.gz
npm-version:
name: Modify package.json version
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: Download artifacts
uses: dawidd6/action-download-artifact@v12
id: download
with:
branch: ${{ github.ref }}
workflow: build.yaml
workflow_conclusion: completed
name: npm-package
check_artifacts: false
if_no_artifact_found: fail
- run: tar -xzf package.tar.gz
# Strip out the v (v4.9.1 -> 4.9.1).
- name: Get and set VERSION
run: |
TAG="${{ inputs.version || github.ref_name }}"
echo "VERSION=${TAG#v}" >> $GITHUB_ENV
- name: Modify version
env:
VERSION: ${{ env.VERSION }}
run: |
echo "Updating version in root package.json"
npm version --prefix release "$VERSION"
echo "Updating version in lib/vscode/product.json"
tmp=$(mktemp)
jq ".codeServerVersion = \"$VERSION\"" release/lib/vscode/product.json > "$tmp" && mv "$tmp" release/lib/vscode/product.json
# Ensure it has the same permissions as before
chmod 644 release/lib/vscode/product.json
- run: tar -czf package.tar.gz release
- name: Upload npm package artifact
uses: actions/upload-artifact@v4
with:
name: npm-release-package
path: ./package.tar.gz

67
.github/workflows/scripts.yaml vendored Normal file
View File

@ -0,0 +1,67 @@
name: Script unit tests
on:
push:
branches:
- main
paths:
- "**.sh"
- "**.bats"
pull_request:
branches:
- main
paths:
- "**.sh"
- "**.bats"
permissions:
actions: none
checks: none
contents: read
deployments: none
issues: none
packages: none
pull-requests: none
repository-projects: none
security-events: none
statuses: none
# Cancel in-progress runs for pull requests when developers push
# additional changes, and serialize builds in branches.
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-concurrency-to-cancel-any-in-progress-job-or-run
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
jobs:
test:
name: Run script unit tests
runs-on: ubuntu-latest
# This runs on Alpine to make sure we're testing with actual sh.
container: "alpine:3.17"
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Install test utilities
run: apk add bats checkbashisms
- name: Check Bashisms
run: checkbashisms ./install.sh
- name: Run script unit tests
run: ./ci/dev/test-scripts.sh
lint:
name: Lint shell files
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- name: Checkout repo
uses: actions/checkout@v6
- name: Install lint utilities
run: sudo apt install shellcheck
- name: Lint shell files
run: ./ci/dev/lint-scripts.sh

92
.github/workflows/security.yaml vendored Normal file
View File

@ -0,0 +1,92 @@
name: Security
on:
push:
branches: [main]
paths:
- "package.json"
pull_request:
paths:
- "package.json"
schedule:
# Runs every Monday morning PST
- cron: "17 15 * * 1"
# Cancel in-progress runs for pull requests when developers push additional
# changes, and serialize builds in branches.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
jobs:
audit:
name: Audit node modules
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: Checkout repo
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Install Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
- name: Audit npm for vulnerabilities
run: npm audit
if: success()
trivy-scan-repo:
name: Scan repo with Trivy
permissions:
contents: read # for actions/checkout to fetch code
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
runs-on: ubuntu-22.04
steps:
- name: Checkout repo
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Run Trivy vulnerability scanner in repo mode
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8
with:
scan-type: "fs"
scan-ref: "."
ignore-unfixed: true
format: "template"
template: "@/contrib/sarif.tpl"
output: "trivy-repo-results.sarif"
severity: "HIGH,CRITICAL"
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@v4
with:
sarif_file: "trivy-repo-results.sarif"
codeql-analyze:
permissions:
actions: read # for github/codeql-action/init to get workflow details
contents: read # for actions/checkout to fetch code
security-events: write # for github/codeql-action/autobuild to send a status report
name: Analyze with CodeQL
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v6
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
config-file: ./.github/codeql-config.yml
languages: javascript
- name: Autobuild
uses: github/codeql-action/autobuild@v4
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4

65
.github/workflows/trivy-docker.yaml vendored Normal file
View File

@ -0,0 +1,65 @@
name: Trivy Nightly Docker Scan
on:
# Run scans if the workflow is modified, in order to test the
# workflow itself. This results in some spurious notifications,
# but seems okay for testing.
pull_request:
branches:
- main
paths:
- .github/workflows/trivy-docker.yaml
# Run scans against master whenever changes are merged.
push:
branches:
- main
paths:
- .github/workflows/trivy-docker.yaml
schedule:
# Run at 10:15 am UTC (3:15am PT/5:15am CT)
# Run at 0 minutes 0 hours of every day.
- cron: "15 10 * * *"
workflow_dispatch:
permissions:
actions: none
checks: none
contents: read
deployments: none
issues: none
packages: none
pull-requests: none
repository-projects: none
security-events: write
statuses: none
# Cancel in-progress runs for pull requests when developers push
# additional changes, and serialize builds in branches.
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-concurrency-to-cancel-any-in-progress-job-or-run
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
jobs:
trivy-scan-image:
runs-on: ubuntu-22.04
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Run Trivy vulnerability scanner in image mode
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8
with:
image-ref: "docker.io/codercom/code-server:latest"
ignore-unfixed: true
format: "sarif"
output: "trivy-image-results.sarif"
severity: "HIGH,CRITICAL"
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@v4
with:
sarif_file: "trivy-image-results.sarif"

13
.gitignore vendored
View File

@ -1,7 +1,6 @@
.tsbuildinfo
.cache
dist*
out*
/out*/
release/
release-npm-package/
release-standalone/
@ -9,12 +8,18 @@ release-packages/
release-gcp/
release-images/
node_modules
/lib/vscode/node_modules.asar
node-*
/plugins
/lib/coder-cloud-agent
.home
coverage
**/.DS_Store
# Code packages itself here.
/lib/vscode-reh-web-*
# Failed e2e test videos are saved here
test/test-results
# Quilt's internal data.
/.pc
/patches/*.diff~

3
.gitmodules vendored Normal file
View File

@ -0,0 +1,3 @@
[submodule "lib/vscode"]
path = lib/vscode
url = https://github.com/microsoft/vscode

1
.node-version Normal file
View File

@ -0,0 +1 @@
22.21.1

1
.nvmrc Symbolic link
View File

@ -0,0 +1 @@
.node-version

10
.prettierignore Normal file
View File

@ -0,0 +1,10 @@
lib/vscode
lib/vscode-reh-web-linux-x64
release-standalone
release-packages
release
helm-chart
test/scripts
test/e2e/extensions/test-extension
.pc
package-lock.json

View File

@ -2,3 +2,5 @@ printWidth: 120
semi: false
trailingComma: all
arrowParens: always
singleQuote: false
useTabs: false

View File

@ -1,2 +0,0 @@
extends:
- stylelint-config-recommended

View File

@ -50,7 +50,7 @@
{
"file": "src/node/heart.ts",
"line": 7,
"description": "code-server's heart beats to indicate recent activity.\n\nAlso documented here: [https://github.com/cdr/code-server/blob/master/docs/FAQ.md#heartbeat-file](https://github.com/cdr/code-server/blob/master/docs/FAQ.md#heartbeat-file)"
"description": "code-server's heart beats to indicate recent activity.\n\nAlso documented here: [https://github.com/coder/code-server/blob/main/docs/FAQ.md#heartbeat-file](https://github.com/coder/code-server/blob/main/docs/FAQ.md#heartbeat-file)"
},
{
"file": "src/node/socket.ts",
@ -80,12 +80,12 @@
{
"file": "src/node/routes/domainProxy.ts",
"line": 18,
"description": "code-server provides a built-in proxy to help in developing web-based applications. This is the code for the domain-based proxy.\n\nAlso documented here: [https://github.com/cdr/code-server/blob/master/docs/FAQ.md#how-do-i-securely-access-web-services](https://github.com/cdr/code-server/blob/master/docs/FAQ.md#how-do-i-securely-access-web-services)"
"description": "code-server provides a built-in proxy to help in developing web-based applications. This is the code for the domain-based proxy.\n\nAlso documented here: [https://github.com/coder/code-server/blob/main/docs/FAQ.md#how-do-i-securely-access-web-services](https://github.com/coder/code-server/blob/main/docs/FAQ.md#how-do-i-securely-access-web-services)"
},
{
"file": "src/node/routes/pathProxy.ts",
"line": 19,
"description": "Here is the path-based version of the proxy.\n\nAlso documented here: [https://github.com/cdr/code-server/blob/master/docs/FAQ.md#how-do-i-securely-access-web-services](https://github.com/cdr/code-server/blob/master/docs/FAQ.md#how-do-i-securely-access-web-services)"
"description": "Here is the path-based version of the proxy.\n\nAlso documented here: [https://github.com/coder/code-server/blob/main/docs/FAQ.md#how-do-i-securely-access-web-services](https://github.com/coder/code-server/blob/main/docs/FAQ.md#how-do-i-securely-access-web-services)"
},
{
"file": "src/node/proxy.ts",
@ -95,7 +95,7 @@
{
"file": "src/node/routes/health.ts",
"line": 5,
"description": "A simple endpoint that lets you see if code-server is up.\n\nAlso documented here: [https://github.com/cdr/code-server/blob/master/docs/FAQ.md#healthz-endpoint](https://github.com/cdr/code-server/blob/master/docs/FAQ.md#healthz-endpoint)"
"description": "A simple endpoint that lets you see if code-server is up.\n\nAlso documented here: [https://github.com/coder/code-server/blob/main/docs/FAQ.md#healthz-endpoint](https://github.com/coder/code-server/blob/main/docs/FAQ.md#healthz-endpoint)"
},
{
"file": "src/node/routes/login.ts",
@ -145,7 +145,7 @@
{
"directory": "lib/vscode",
"line": 1,
"description": "code-server makes use of VS Code's frontend web/remote support. Most of the modifications implement the remote server since that portion of the code is closed source and not released with VS Code.\n\nWe also have a few bug fixes and have added some features (like client-side extensions). See [https://github.com/cdr/code-server/blob/master/docs/CONTRIBUTING.md#modifications-to-vs-code](https://github.com/cdr/code-server/blob/master/docs/CONTRIBUTING.md#modifications-to-vs-code) for a list.\n\nWe make an effort to keep the modifications as few as possible."
"description": "code-server makes use of VS Code's frontend web/remote support. Most of the modifications implement the remote server since that portion of the code is closed source and not released with VS Code.\n\nWe also have a few bug fixes and have added some features (like client-side extensions). See [https://github.com/coder/code-server/blob/main/docs/CONTRIBUTING.md#modifications-to-vs-code](https://github.com/coder/code-server/blob/main/docs/CONTRIBUTING.md#modifications-to-vs-code) for a list.\n\nWe make an effort to keep the modifications as few as possible."
}
]
}
}

View File

@ -5,7 +5,7 @@
{
"file": "package.json",
"line": 31,
"description": "## Commands\n\nTo start developing, make sure you have Node 12+ and the [required dependencies](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#prerequisites) installed. Then, run the following commands:\n\n1. Install dependencies:\n>> yarn\n\n3. Start development mode (and watch for changes):\n>> yarn watch"
"description": "## Commands\n\nTo start developing, make sure you have Node 16+ and the [required dependencies](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#prerequisites) installed. Then, run the following commands:\n\n1. Install dependencies:\n>> npm\n\n3. Start development mode (and watch for changes):\n>> npm run watch"
},
{
"file": "src/node/app.ts",
@ -20,7 +20,7 @@
{
"file": "src/node/app.ts",
"line": 62,
"description": "## That's it!\n\n\nThat's all there is to it! When this tour ends, your terminal session may stop, but just use `yarn watch` to start developing from here on out!\n\n\nIf you haven't already, be sure to check out these resources:\n- [Tour: Contributing](command:codetour.startTourByTitle?[\"Contributing\")\n- [Docs: FAQ.md](https://github.com/cdr/code-server/blob/master/docs/FAQ.md)\n- [Docs: CONTRIBUTING.md](https://github.com/cdr/code-server/blob/master/docs/CONTRIBUTING.md)\n- [Community: GitHub Discussions](https://github.com/cdr/code-server/discussions)\n- [Community: Slack](https://community.coder.com)"
"description": "## That's it!\n\n\nThat's all there is to it! When this tour ends, your terminal session may stop, but just use `npm run watch` to start developing from here on out!\n\n\nIf you haven't already, be sure to check out these resources:\n- [Tour: Contributing](command:codetour.startTourByTitle?[\"Contributing\"])\n- [Docs: FAQ.md](https://github.com/coder/code-server/blob/main/docs/FAQ.md)\n- [Docs: CONTRIBUTING.md](https://github.com/coder/code-server/blob/main/docs/CONTRIBUTING.md)\n- [Community: GitHub Discussions](https://github.com/coder/code-server/discussions)\n- [Community: Slack](https://community.coder.com)"
}
]
}

File diff suppressed because it is too large Load Diff

View File

@ -1,77 +0,0 @@
# code-server &middot; [!["GitHub Discussions"](https://img.shields.io/badge/%20GitHub-%20Discussions-gray.svg?longCache=true&logo=github&colorB=purple)](https://github.com/cdr/code-server/discussions) [!["Join us on Slack"](https://img.shields.io/badge/join-us%20on%20slack-gray.svg?longCache=true&logo=slack&colorB=brightgreen)](https://cdr.co/join-community) [![Twitter Follow](https://img.shields.io/twitter/follow/CoderHQ?label=%40CoderHQ&style=social)](https://twitter.com/coderhq)
[![codecov](https://codecov.io/gh/cdr/code-server/branch/main/graph/badge.svg?token=5iM9farjnC)](https://codecov.io/gh/cdr/code-server)
[![See latest docs](https://img.shields.io/static/v1?label=Docs&message=see%20latest%20&color=blue)](https://github.com/cdr/code-server/tree/v3.10.0/docs)
Run [VS Code](https://github.com/Microsoft/vscode) on any machine anywhere and access it in the browser.
![Screenshot](./docs/assets/screenshot.png)
## Highlights
- Code on any device with a consistent development environment
- Use cloud servers to speed up tests, compilations, downloads, and more
- Preserve battery life when you're on the go; all intensive tasks run on your server
## Requirements
For a good experience, we recommend at least:
- 1 GB of RAM
- 2 cores
You can use whatever linux distribution floats your boat but in our [guide](./docs/guide.md) we assume Debian on Google Cloud.
## Getting Started
There are three ways you can get started:
1. Using the [install script](./install.sh), which automates most of the process. The script uses the system package manager (if possible)
2. Manually installing code-server; see [Installation](./docs/install.md) for instructions applicable to most use cases
3. Use our one-click buttons and guides to [deploy code-server to a popular cloud provider](https://github.com/cdr/deploy-code-server) ⚡
If you choose to use the install script, you can preview what occurs during the install process:
```bash
curl -fsSL https://code-server.dev/install.sh | sh -s -- --dry-run
```
To install, run:
```bash
curl -fsSL https://code-server.dev/install.sh | sh
```
When done, the install script prints out instructions for running and starting code-server.
We also have an in-depth [setup and configuration](./docs/guide.md) guide.
### code-server --link
We're working on a cloud platform that makes deploying and managing code-server easier.
Consider running code-server with the beta flag `--link` if you don't want to worry about
- TLS
- Authentication
- Port Forwarding
```bash
$ code-server --link
Proxying code-server, you can access your IDE at https://valmar-jon.cdr.co
```
## FAQ
See [./docs/FAQ.md](./docs/FAQ.md).
## Want to help?
See [CONTRIBUTING](./docs/CONTRIBUTING.md) for details.
## Hiring
Interested in [working at Coder](https://coder.com)? Check out [our open positions](https://jobs.lever.co/coder)!
## For Organizations
Visit [our website](https://coder.com) for more information about remote development for your organization or enterprise.

15
ci/Caddyfile Normal file
View File

@ -0,0 +1,15 @@
{
admin localhost:4444
}
:8000 {
@portLocalhost path_regexp port ^/([0-9]+)\/ide
handle @portLocalhost {
uri strip_prefix {re.port.1}/ide
reverse_proxy localhost:{re.port.1}
}
handle {
respond "Bad hostname" 400
}
}

View File

@ -10,52 +10,24 @@ Any file or directory in this subdirectory should be documented here.
- [./ci/lib.sh](./lib.sh)
- Contains code duplicated across these scripts.
## Publishing a release
1. Run `yarn release:prep` and type in the new version i.e. 3.8.1
2. GitHub actions will generate the `npm-package`, `release-packages` and `release-images` artifacts.
1. You do not have to wait for these.
3. Run `yarn release:github-draft` to create a GitHub draft release from the template with
the updated version.
1. Summarize the major changes in the release notes and link to the relevant issues.
2. Change the @ to target the version branch. Example: `v3.9.0 @ Target: v3.9.0`
4. Wait for the artifacts in step 2 to build.
5. Run `yarn release:github-assets` to download the `release-packages` artifact.
- It will upload them to the draft release.
6. Run some basic sanity tests on one of the released packages.
- Especially make sure the terminal works fine.
7. Make sure the github release tag is the commit with the artifacts.
8. Publish the release and merge the PR.
1. CI will automatically grab the artifacts and then:
1. Publish the NPM package from `npm-package`.
2. Publish the Docker Hub image from `release-images`.
9. Update the AUR package.
- Instructions on updating the AUR package are at [cdr/code-server-aur](https://github.com/cdr/code-server-aur).
10. Wait for the npm package to be published.
11. Update the [homebrew package](https://github.com/Homebrew/homebrew-core/blob/master/Formula/code-server.rb).
1. Install [homebrew](https://brew.sh/)
2. Run `brew bump-formula-pr --version=3.8.1 code-server` and update the version accordingly. This will bump the version and open a PR. Note: this will only work once the version is published on npm.
## dev
This directory contains scripts used for the development of code-server.
- [./ci/dev/image](./dev/image)
- See [./docs/CONTRIBUTING.md](../docs/CONTRIBUTING.md) for docs on the development container.
- [./ci/dev/fmt.sh](./dev/fmt.sh) (`yarn fmt`)
- [./ci/dev/fmt.sh](./dev/fmt.sh) (`npm run fmt`)
- Runs formatters.
- [./ci/dev/lint.sh](./dev/lint.sh) (`yarn lint`)
- [./ci/dev/lint.sh](./dev/lint.sh) (`npm run lint`)
- Runs linters.
- [./ci/dev/test-unit.sh](./dev/test-unit.sh) (`yarn test:unit`)
- [./ci/dev/test-unit.sh](./dev/test-unit.sh) (`npm run test:unit`)
- Runs unit tests.
- [./ci/dev/test-e2e.sh](./dev/test-e2e.sh) (`yarn test:e2e`)
- [./ci/dev/test-e2e.sh](./dev/test-e2e.sh) (`npm run test:e2e`)
- Runs end-to-end tests.
- [./ci/dev/ci.sh](./dev/ci.sh) (`yarn ci`)
- Runs `yarn fmt`, `yarn lint` and `yarn test`.
- [./ci/dev/watch.ts](./dev/watch.ts) (`yarn watch`)
- [./ci/dev/watch.ts](./dev/watch.ts) (`npm run watch`)
- Starts a process to build and launch code-server and restart on any code changes.
- Example usage in [./docs/CONTRIBUTING.md](../docs/CONTRIBUTING.md).
- [./ci/dev/gen_icons.sh](./ci/dev/gen_icons.sh) (`yarn icons`)
- [./ci/dev/gen_icons.sh](./dev/gen_icons.sh) (`npm run icons`)
- Generates the various icons from a single `.svg` favicon in
`src/browser/media/favicon.svg`.
- Requires [imagemagick](https://imagemagick.org/index.php)
@ -65,23 +37,20 @@ This directory contains scripts used for the development of code-server.
This directory contains the scripts used to build and release code-server.
You can disable minification by setting `MINIFY=`.
- [./ci/build/build-code-server.sh](./build/build-code-server.sh) (`yarn build`)
- [./ci/build/build-code-server.sh](./build/build-code-server.sh) (`npm run build`)
- Builds code-server into `./out` and bundles the frontend into `./dist`.
- [./ci/build/build-vscode.sh](./build/build-vscode.sh) (`yarn build:vscode`)
- [./ci/build/build-vscode.sh](./build/build-vscode.sh) (`npm run build:vscode`)
- Builds vscode into `./lib/vscode/out-vscode`.
- [./ci/build/build-release.sh](./build/build-release.sh) (`yarn release`)
- [./ci/build/build-release.sh](./build/build-release.sh) (`npm run release`)
- Bundles the output of the above two scripts into a single node module at `./release`.
- [./ci/build/build-standalone-release.sh](./build/build-standalone-release.sh) (`yarn release:standalone`)
- Requires a node module already built into `./release` with the above script.
- Will build a standalone release with node and node_modules bundled into `./release-standalone`.
- [./ci/build/clean.sh](./build/clean.sh) (`yarn clean`)
- [./ci/build/clean.sh](./build/clean.sh) (`npm run clean`)
- Removes all build artifacts.
- Useful to do a clean build.
- [./ci/build/code-server.sh](./build/code-server.sh)
- Copied into standalone releases to run code-server with the bundled node binary.
- [./ci/build/test-standalone-release.sh](./build/test-standalone-release.sh) (`yarn test:standalone-release`)
- [./ci/build/test-standalone-release.sh](./build/test-standalone-release.sh) (`npm run test:standalone-release`)
- Ensures code-server in the `./release-standalone` directory works by installing an extension.
- [./ci/build/build-packages.sh](./build/build-packages.sh) (`yarn package`)
- [./ci/build/build-packages.sh](./build/build-packages.sh) (`npm run package`)
- Packages `./release-standalone` into a `.tar.gz` archive in `./release-packages`.
- If on linux, [nfpm](https://github.com/goreleaser/nfpm) is used to generate `.deb` and `.rpm`.
- [./ci/build/nfpm.yaml](./build/nfpm.yaml)
@ -90,22 +59,22 @@ You can disable minification by setting `MINIFY=`.
- Entrypoint script for code-server for `.deb` and `.rpm`.
- [./ci/build/code-server.service](./build/code-server.service)
- systemd user service packaged into the `.deb` and `.rpm`.
- [./ci/build/release-github-draft.sh](./build/release-github-draft.sh) (`yarn release:github-draft`)
- [./ci/build/release-github-draft.sh](./build/release-github-draft.sh) (`npm run release:github-draft`)
- Uses [gh](https://github.com/cli/cli) to create a draft release with a template description.
- [./ci/build/release-github-assets.sh](./build/release-github-assets.sh) (`yarn release:github-assets`)
- [./ci/build/release-github-assets.sh](./build/release-github-assets.sh) (`npm run release:github-assets`)
- Downloads the release-package artifacts for the current commit from CI.
- Uses [gh](https://github.com/cli/cli) to upload the artifacts to the release
specified in `package.json`.
- [./ci/build/npm-postinstall.sh](./build/npm-postinstall.sh)
- Post install script for the npm package.
- Bundled by`yarn release`.
- Bundled by`npm run release`.
## release-image
This directory contains the release docker container image.
- [./release-image/build.sh](./release-image/build.sh)
- Builds the release container with the tag `codercom/code-server-$ARCH:$VERSION`.
- [./ci/steps/build-docker-buildx-push.sh](./steps/docker-buildx-push.sh)
- Builds the release containers with tags `codercom/code-server-$ARCH:$VERSION` for amd64 and arm64 with `docker buildx` and pushes them.
- Assumes debian releases are ready in `./release-packages`.
## images
@ -118,13 +87,15 @@ This directory contains the scripts used in CI.
Helps avoid clobbering the CI configuration.
- [./steps/fmt.sh](./steps/fmt.sh)
- Runs `yarn fmt`.
- Runs `npm run fmt`.
- [./steps/lint.sh](./steps/lint.sh)
- Runs `yarn lint`.
- Runs `npm run lint`.
- [./steps/test-unit.sh](./steps/test-unit.sh)
- Runs `yarn test:unit`.
- Runs `npm run test:unit`.
- [./steps/test-integration.sh](./steps/test-integration.sh)
- Runs `npm run test:integration`.
- [./steps/test-e2e.sh](./steps/test-e2e.sh)
- Runs `yarn test:e2e`.
- Runs `npm run test:e2e`.
- [./steps/release.sh](./steps/release.sh)
- Runs the release process.
- Generates the npm package at `./release`.
@ -133,8 +104,8 @@ Helps avoid clobbering the CI configuration.
release packages into `./release-packages`.
- [./steps/publish-npm.sh](./steps/publish-npm.sh)
- Grabs the `npm-package` release artifact for the current commit and publishes it on npm.
- [./steps/build-docker-image.sh](./steps/build-docker-image.sh)
- Builds the docker image and then saves it into `./release-images/code-server-$ARCH-$VERSION.tar`.
- [./steps/docker-buildx-push.sh](./steps/docker-buildx-push.sh)
- Builds the docker image and then pushes it.
- [./steps/push-docker-manifest.sh](./steps/push-docker-manifest.sh)
- Loads all images in `./release-images` and then builds and pushes a multi architecture
docker manifest for the amd64 and arm64 images to `codercom/code-server:$VERSION` and

View File

@ -3,9 +3,6 @@ set -euo pipefail
# Builds code-server into out and the frontend into dist.
# MINIFY controls whether parcel minifies dist.
MINIFY=${MINIFY-true}
main() {
cd "$(dirname "${0}")/../.."
@ -17,29 +14,6 @@ main() {
sed -i.bak "1s;^;#!/usr/bin/env node\n;" out/node/entry.js && rm out/node/entry.js.bak
chmod +x out/node/entry.js
fi
if ! [ -f ./lib/coder-cloud-agent ]; then
echo "Downloading the cloud agent..."
# for arch; we do not use OS from lib.sh and get our own.
# lib.sh normalizes macos to darwin - but cloud-agent's binaries do not
source ./ci/lib.sh
OS="$(uname | tr '[:upper:]' '[:lower:]')"
set +e
curl -fsSL "https://github.com/cdr/cloud-agent/releases/latest/download/cloud-agent-$OS-$ARCH" -o ./lib/coder-cloud-agent
chmod +x ./lib/coder-cloud-agent
set -e
fi
parcel build \
--public-url "." \
--out-dir dist \
$([[ $MINIFY ]] || echo --no-minify) \
src/browser/register.ts \
src/browser/serviceWorker.ts \
src/browser/pages/login.ts \
src/browser/pages/vscode.ts
}
main "$@"

28
ci/build/build-lib.sh Executable file
View File

@ -0,0 +1,28 @@
#!/usr/bin/env bash
# This is a library which contains functions used inside ci/build
#
# We separated it into it's own file so that we could easily unit test
# these functions and helpers.
# On some CPU architectures (notably node/uname "armv7l", default on Raspberry Pis),
# different package managers have different labels for the same CPU (deb=armhf, rpm=armhfp).
# This function returns the overriden arch on platforms
# with alternate labels, or the same arch otherwise.
get_nfpm_arch() {
local PKG_FORMAT="${1:-}"
local ARCH="${2:-}"
case "$ARCH" in
armv7l)
if [ "$PKG_FORMAT" = "deb" ]; then
echo armhf
elif [ "$PKG_FORMAT" = "rpm" ]; then
echo armhfp
fi
;;
*)
echo "$ARCH"
;;
esac
}

View File

@ -1,12 +1,15 @@
#!/usr/bin/env bash
set -euo pipefail
# Packages code-server for the current OS and architecture into ./release-packages.
# This script assumes that a standalone release is built already into ./release-standalone
# Given a platform-specific release found in ./release-standalone, generate an
# compressed archives and bundles (as appropriate for the platform) named after
# the platform's architecture and OS and place them in ./release-packages and
# ./release-gcp.
main() {
cd "$(dirname "${0}")/../.."
source ./ci/lib.sh
source ./ci/build/build-lib.sh
# Allow us to override architecture
# we use this for our Linux ARM64 cross compile builds
@ -26,7 +29,7 @@ main() {
release_archive() {
local release_name="code-server-$VERSION-$OS-$ARCH"
if [[ $OS == "linux" ]]; then
tar -czf "release-packages/$release_name.tar.gz" --transform "s/^\.\/release-standalone/$release_name/" ./release-standalone
tar -czf "release-packages/$release_name.tar.gz" --owner=0 --group=0 --transform "s/^\.\/release-standalone/$release_name/" ./release-standalone
else
tar -czf "release-packages/$release_name.tar.gz" -s "/^release-standalone/$release_name/" release-standalone
fi
@ -46,11 +49,22 @@ release_gcp() {
# Generates deb and rpm packages.
release_nfpm() {
local nfpm_config
nfpm_config="$(envsubst <./ci/build/nfpm.yaml)"
# The underscores are convention for .deb.
nfpm pkg -f <(echo "$nfpm_config") --target "release-packages/code-server_${VERSION}_$ARCH.deb"
nfpm pkg -f <(echo "$nfpm_config") --target "release-packages/code-server-$VERSION-$ARCH.rpm"
export NFPM_ARCH
PKG_FORMAT="deb"
NFPM_ARCH="$(get_nfpm_arch $PKG_FORMAT "$ARCH")"
nfpm_config="$(envsubst < ./ci/build/nfpm.yaml)"
echo "Building deb"
echo "$nfpm_config" | head --lines=4
nfpm pkg -f <(echo "$nfpm_config") --target "release-packages/code-server_${VERSION}_${NFPM_ARCH}.deb"
PKG_FORMAT="rpm"
NFPM_ARCH="$(get_nfpm_arch $PKG_FORMAT "$ARCH")"
nfpm_config="$(envsubst < ./ci/build/nfpm.yaml)"
echo "Building rpm"
echo "$nfpm_config" | head --lines=4
nfpm pkg -f <(echo "$nfpm_config") --target "release-packages/code-server-$VERSION-$NFPM_ARCH.rpm"
}
main "$@"

View File

@ -1,103 +1,135 @@
#!/usr/bin/env bash
set -euo pipefail
# This script requires vscode to be built with matching MINIFY.
# Once both code-server and VS Code have been built, use this script to copy
# them into a single directory (./release), prepare the package.json and
# product.json, and add shrinkwraps. This results in a generic NPM package that
# we published to NPM and also use to compile platform-specific packages.
# MINIFY controls whether minified vscode is bundled.
# MINIFY controls whether minified VS Code is bundled. It must match the value
# used when VS Code was built.
MINIFY="${MINIFY-true}"
# KEEP_MODULES controls whether the script cleans all node_modules requiring a yarn install
# to run first.
# node_modules are not copied by default. Set KEEP_MODULES=1 to copy them.
KEEP_MODULES="${KEEP_MODULES-0}"
main() {
cd "$(dirname "${0}")/../.."
source ./ci/lib.sh
VSCODE_SRC_PATH="lib/vscode"
VSCODE_OUT_PATH="$RELEASE_PATH/lib/vscode"
create_shrinkwraps
mkdir -p "$RELEASE_PATH"
bundle_code_server
bundle_vscode
rsync README.md "$RELEASE_PATH"
rsync LICENSE.txt "$RELEASE_PATH"
rsync ./docs/README.md "$RELEASE_PATH"
rsync LICENSE "$RELEASE_PATH"
rsync ./lib/vscode/ThirdPartyNotices.txt "$RELEASE_PATH"
}
bundle_code_server() {
rsync out dist "$RELEASE_PATH"
rsync out "$RELEASE_PATH"
# For source maps and images.
mkdir -p "$RELEASE_PATH/src/browser"
rsync src/browser/media/ "$RELEASE_PATH/src/browser/media"
mkdir -p "$RELEASE_PATH/src/browser/pages"
rsync src/browser/pages/*.html "$RELEASE_PATH/src/browser/pages"
rsync src/browser/pages/*.css "$RELEASE_PATH/src/browser/pages"
rsync src/browser/robots.txt "$RELEASE_PATH/src/browser"
# Add typings for plugins
mkdir -p "$RELEASE_PATH/typings"
rsync typings/pluginapi.d.ts "$RELEASE_PATH/typings"
# Adds the commit to package.json
jq --slurp '.[0] * .[1]' package.json <(
cat <<EOF
jq --slurp '(.[0] | del(.scripts,.jest,.devDependencies)) * .[1]' package.json <(
cat << EOF
{
"commit": "$(git rev-parse HEAD)",
"scripts": {
"postinstall": "./postinstall.sh"
"postinstall": "sh ./postinstall.sh"
}
}
EOF
) >"$RELEASE_PATH/package.json"
rsync yarn.lock "$RELEASE_PATH"
) > "$RELEASE_PATH/package.json"
mv npm-shrinkwrap.json "$RELEASE_PATH"
rsync ci/build/npm-postinstall.sh "$RELEASE_PATH/postinstall.sh"
if [ "$KEEP_MODULES" = 1 ]; then
rsync node_modules/ "$RELEASE_PATH/node_modules"
mkdir -p "$RELEASE_PATH/lib"
rsync ./lib/coder-cloud-agent "$RELEASE_PATH/lib"
fi
}
bundle_vscode() {
mkdir -p "$VSCODE_OUT_PATH"
rsync "$VSCODE_SRC_PATH/yarn.lock" "$VSCODE_OUT_PATH"
rsync "$VSCODE_SRC_PATH/out-vscode${MINIFY:+-min}/" "$VSCODE_OUT_PATH/out"
rsync "$VSCODE_SRC_PATH/.build/extensions/" "$VSCODE_OUT_PATH/extensions"
if [ "$KEEP_MODULES" = 0 ]; then
rm -Rf "$VSCODE_OUT_PATH/extensions/node_modules"
else
rsync "$VSCODE_SRC_PATH/node_modules/" "$VSCODE_OUT_PATH/node_modules"
local rsync_opts=()
if [[ ${DEBUG-} = 1 ]]; then
rsync_opts+=(-vh)
fi
rsync "$VSCODE_SRC_PATH/extensions/package.json" "$VSCODE_OUT_PATH/extensions"
rsync "$VSCODE_SRC_PATH/extensions/yarn.lock" "$VSCODE_OUT_PATH/extensions"
rsync "$VSCODE_SRC_PATH/extensions/postinstall.js" "$VSCODE_OUT_PATH/extensions"
mkdir -p "$VSCODE_OUT_PATH/resources/"{linux,web}
rsync "$VSCODE_SRC_PATH/resources/linux/code.png" "$VSCODE_OUT_PATH/resources/linux/code.png"
rsync "$VSCODE_SRC_PATH/resources/web/callback.html" "$VSCODE_OUT_PATH/resources/web/callback.html"
# Some extensions have a .gitignore which excludes their built source from the
# npm package so exclude any .gitignore files.
rsync_opts+=(--exclude .gitignore)
# Adds the commit and date to product.json
jq --slurp '.[0] * .[1]' "$VSCODE_SRC_PATH/product.json" <(
cat <<EOF
{
"commit": "$(git rev-parse HEAD)",
"date": $(jq -n 'now | todate')
}
EOF
) >"$VSCODE_OUT_PATH/product.json"
# Exclude Node as we will add it ourselves for the standalone and will not
# need it for the npm package.
rsync_opts+=(--exclude /node)
# We remove the scripts field so that later on we can run
# yarn to fetch node_modules if necessary without build scripts running.
# We cannot use --no-scripts because we still want dependent package scripts to run.
jq 'del(.scripts)' <"$VSCODE_SRC_PATH/package.json" >"$VSCODE_OUT_PATH/package.json"
# Exclude Node modules.
if [[ $KEEP_MODULES = 0 ]]; then
rsync_opts+=(--exclude node_modules)
fi
pushd "$VSCODE_OUT_PATH"
symlink_asar
rsync "${rsync_opts[@]}" ./lib/vscode-reh-web-*/ "$VSCODE_OUT_PATH"
# Merge the package.json for the web/remote server so we can include
# dependencies, since we want to ship this via NPM.
jq --slurp '.[0] * .[1]' \
"$VSCODE_SRC_PATH/remote/package.json" \
"$VSCODE_OUT_PATH/package.json" > "$VSCODE_OUT_PATH/package.json.merged"
mv "$VSCODE_OUT_PATH/package.json.merged" "$VSCODE_OUT_PATH/package.json"
cp "$VSCODE_SRC_PATH/remote/npm-shrinkwrap.json" "$VSCODE_OUT_PATH/npm-shrinkwrap.json"
# Include global extension dependencies as well.
rsync "$VSCODE_SRC_PATH/extensions/package.json" "$VSCODE_OUT_PATH/extensions/package.json"
cp "$VSCODE_SRC_PATH/extensions/npm-shrinkwrap.json" "$VSCODE_OUT_PATH/extensions/npm-shrinkwrap.json"
rsync "$VSCODE_SRC_PATH/extensions/postinstall.mjs" "$VSCODE_OUT_PATH/extensions/postinstall.mjs"
}
create_shrinkwraps() {
# package-lock.json files (used to ensure deterministic versions of
# dependencies) are not packaged when publishing to the NPM registry.
#
# To ensure deterministic dependency versions (even when code-server is
# installed with NPM), we create an npm-shrinkwrap.json file from the
# currently installed node_modules. This ensures the versions used from
# development (that the package-lock.json guarantees) are also the ones
# installed by end-users. These will include devDependencies, but those will
# be ignored when installing globally (for code-server), and because we use
# --omit=dev (for VS Code).
# We first generate the shrinkwrap file for code-server itself - which is the
# current directory.
cp package-lock.json package-lock.json.temp
npm shrinkwrap
mv package-lock.json.temp package-lock.json
# Then the shrinkwrap files for the bundled VS Code.
pushd "$VSCODE_SRC_PATH/remote/"
cp package-lock.json package-lock.json.temp
npm shrinkwrap
mv package-lock.json.temp package-lock.json
popd
pushd "$VSCODE_SRC_PATH/extensions/"
cp package-lock.json package-lock.json.temp
npm shrinkwrap
mv package-lock.json.temp package-lock.json
popd
}

View File

@ -1,28 +1,37 @@
#!/usr/bin/env bash
set -euo pipefail
# Once we have an NPM package, use this script to copy it to a separate
# directory (./release-standalone) and install the dependencies. This new
# directory can then be packaged as a platform-specific release.
main() {
cd "$(dirname "${0}")/../.."
source ./ci/lib.sh
rsync "$RELEASE_PATH/" "$RELEASE_PATH-standalone"
RELEASE_PATH+=-standalone
# We cannot find the path to node from $PATH because yarn shims a script to ensure
# we use the same version it's using so we instead run a script with yarn that
# will print the path to node.
# Package managers may shim their own "node" wrapper into the PATH, so run
# node and ask it for its true path.
local node_path
node_path="$(yarn -s node <<<'console.info(process.execPath)')"
node_path="$(node -p process.execPath)"
mkdir -p "$RELEASE_PATH/bin"
mkdir -p "$RELEASE_PATH/lib"
rsync ./ci/build/code-server.sh "$RELEASE_PATH/bin/code-server"
rsync "$node_path" "$RELEASE_PATH/lib/node"
ln -s "./bin/code-server" "$RELEASE_PATH/code-server"
ln -s "./lib/node" "$RELEASE_PATH/node"
chmod 755 "$RELEASE_PATH/lib/node"
cd "$RELEASE_PATH"
yarn --production --frozen-lockfile
pushd "$RELEASE_PATH"
npm install --unsafe-perm --omit=dev
# Code deletes some files from the extension node_modules directory which
# leaves broken symlinks in the corresponding .bin directory. nfpm will fail
# on these broken symlinks so clean them up.
rm -fr "./lib/vscode/extensions/node_modules/.bin"
popd
}
main "$@"

View File

@ -6,15 +6,144 @@ set -euo pipefail
# MINIFY controls whether a minified version of vscode is built.
MINIFY=${MINIFY-true}
delete-bin-script() {
rm -f "lib/vscode-reh-web-linux-x64/bin/$1"
}
copy-bin-script() {
local script="$1"
local dest="lib/vscode-reh-web-linux-x64/bin/$script"
cp "lib/vscode/resources/server/bin/$script" "$dest"
sed -i.bak "s/@@VERSION@@/$(vscode_version)/g" "$dest"
sed -i.bak "s/@@COMMIT@@/$BUILD_SOURCEVERSION/g" "$dest"
sed -i.bak "s/@@APPNAME@@/code-server/g" "$dest"
# Fix Node path on Darwin and Linux.
# We do not want expansion here; this text should make it to the file as-is.
# shellcheck disable=SC2016
sed -i.bak 's/^ROOT=\(.*\)$/VSROOT=\1\nROOT="$(dirname "$(dirname "$VSROOT")")"/g' "$dest"
sed -i.bak 's/ROOT\/out/VSROOT\/out/g' "$dest"
# We do not want expansion here; this text should make it to the file as-is.
# shellcheck disable=SC2016
sed -i.bak 's/$ROOT\/node/${NODE_EXEC_PATH:-$ROOT\/lib\/node}/g' "$dest"
# Fix Node path on Windows.
sed -i.bak 's/^set ROOT_DIR=\(.*\)$/set ROOT_DIR=%~dp0..\\..\\..\\..\r\nset VSROOT_DIR=\1/g' "$dest"
sed -i.bak 's/%ROOT_DIR%\\out/%VSROOT_DIR%\\out/g' "$dest"
chmod +x "$dest"
rm "$dest.bak"
}
main() {
cd "$(dirname "${0}")/../.."
cd lib/vscode
yarn gulp compile-build compile-extensions-build
yarn gulp optimize --gulpfile ./coder.js
if [[ $MINIFY ]]; then
yarn gulp minify --gulpfile ./coder.js
source ./ci/lib.sh
# Set the commit Code will embed into the product.json. We need to do this
# since Code tries to get the commit from the `.git` directory which will fail
# as it is a submodule.
#
# Also, we use code-server's commit rather than VS Code's otherwise it would
# not update when only our patch files change, and that will cause caching
# issues where the browser keeps using outdated code.
export BUILD_SOURCEVERSION
BUILD_SOURCEVERSION=$(git rev-parse HEAD)
pushd lib/vscode
if [[ ! ${VERSION-} ]]; then
echo "VERSION not set. Please set before running this script:"
echo "VERSION='0.0.0' npm run build:vscode"
exit 1
fi
# Add the date, our name, links, enable telemetry (this just makes telemetry
# available; telemetry can still be disabled by flag or setting), and
# configure trusted extensions (since some, like github.copilot-chat, never
# ask to be trusted and this is the only way to get auth working).
#
# This needs to be done before building as Code will read this file and embed
# it into the client-side code.
git checkout product.json # Reset in case the script exited early.
cp product.json product.original.json # Since jq has no inline edit.
jq --slurp '.[0] * .[1]' product.original.json <(
cat << EOF
{
"enableTelemetry": true,
"quality": "stable",
"codeServerVersion": "$VERSION",
"nameShort": "code-server",
"nameLong": "code-server",
"applicationName": "code-server",
"dataFolderName": ".code-server",
"win32MutexName": "codeserver",
"licenseUrl": "https://github.com/coder/code-server/blob/main/LICENSE",
"win32DirName": "code-server",
"win32NameVersion": "code-server",
"win32AppUserModelId": "coder.code-server",
"win32ShellNameShort": "c&ode-server",
"darwinBundleIdentifier": "com.coder.code.server",
"linuxIconName": "com.coder.code.server",
"reportIssueUrl": "https://github.com/coder/code-server/issues/new",
"documentationUrl": "https://go.microsoft.com/fwlink/?LinkID=533484#vscode",
"keyboardShortcutsUrlMac": "https://go.microsoft.com/fwlink/?linkid=832143",
"keyboardShortcutsUrlLinux": "https://go.microsoft.com/fwlink/?linkid=832144",
"keyboardShortcutsUrlWin": "https://go.microsoft.com/fwlink/?linkid=832145",
"introductoryVideosUrl": "https://go.microsoft.com/fwlink/?linkid=832146",
"tipsAndTricksUrl": "https://go.microsoft.com/fwlink/?linkid=852118",
"newsletterSignupUrl": "https://www.research.net/r/vsc-newsletter",
"linkProtectionTrustedDomains": [
"https://open-vsx.org"
],
"trustedExtensionAuthAccess": [
"vscode.git", "vscode.github",
"github.vscode-pull-request-github",
"github.copilot", "github.copilot-chat"
],
"aiConfig": {
"ariaKey": "code-server"
}
}
EOF
) > product.json
# Any platform here works since we will do our own packaging. We have to do
# this because we have an NPM package that could be installed on any platform.
# The correct platform dependencies and scripts will be installed as part of
# the post-install during `npm install` or when building a standalone release.
node --max-old-space-size=16384 --optimize-for-size \
./node_modules/gulp/bin/gulp.js \
"vscode-reh-web-linux-x64${MINIFY:+-min}"
# Reset so if you develop after building you will not be stuck with the wrong
# commit (the dev client will use `oss-dev` but the dev server will still use
# product.json which will have `stable-$commit`).
git checkout product.json
popd
pushd lib/vscode-reh-web-linux-x64
# Make sure Code took the version we set in the environment variable. Not
# having a version will break display languages.
if ! jq -e .commit product.json; then
echo "'commit' is missing from product.json"
exit 1
fi
popd
# These provide a `code-server` command in the integrated terminal to open
# files in the current instance.
delete-bin-script remote-cli/code-server
copy-bin-script remote-cli/code-darwin.sh
copy-bin-script remote-cli/code-linux.sh
copy-bin-script remote-cli/code.cmd
# These provide a way for terminal applications to open browser windows.
delete-bin-script helpers/browser.sh
copy-bin-script helpers/browser-darwin.sh
copy-bin-script helpers/browser-linux.sh
copy-bin-script helpers/browser.cmd
}
main "$@"

View File

@ -6,10 +6,6 @@ main() {
source ./ci/lib.sh
git clean -Xffd
pushd lib/vscode
git clean -xffd
popd
}
main "$@"

View File

@ -5,20 +5,12 @@ set -eu
# Runs code-server with the bundled node binary.
_realpath() {
# See https://github.com/cdr/code-server/issues/1537 on why no realpath or readlink -f.
# See https://github.com/coder/code-server/issues/1537 on why no realpath or readlink -f.
script="$1"
cd "$(dirname "$script")"
while [ -L "$(basename "$script")" ]; do
if [ -L "./node" ] && [ -L "./code-server" ] \
&& [ -f "package.json" ] \
&& cat package.json | grep -q '^ "name": "code-server",$'; then
echo "***** Please use the script in bin/code-server instead!" >&2
echo "***** This script will soon be removed!" >&2
echo "***** See the release notes at https://github.com/cdr/code-server/releases/tag/v3.4.0" >&2
fi
script="$(readlink "$(basename "$script")")"
cd "$(dirname "$script")"
done

View File

@ -1,14 +1,14 @@
name: "code-server"
arch: "${ARCH}"
arch: "${NFPM_ARCH}"
platform: "linux"
version: "v${VERSION}"
section: "devel"
priority: "optional"
maintainer: "Anmol Sethi <hi@nhooyr.io>"
maintainer: "Joe Previte <joe@coder.com>"
description: |
Run VS Code in the browser.
vendor: "Coder"
homepage: "https://github.com/cdr/code-server"
homepage: "https://github.com/coder/code-server"
license: "MIT"
contents:
@ -22,4 +22,4 @@ contents:
dst: /usr/lib/systemd/user/code-server.service
- src: ./release-standalone/*
dst: /usr/lib/code-server/
dst: /usr/lib/code-server

View File

@ -1,83 +1,160 @@
#!/usr/bin/env sh
set -eu
# Copied from arch() in ci/lib.sh.
detect_arch() {
case "$(uname -m)" in
aarch64)
echo arm64
;;
x86_64 | amd64)
echo amd64
;;
*)
# This will cause the download to fail, but is intentional
uname -m
;;
# Copied from ../lib.sh except we do not rename Darwin and we do not need to
# detect Alpine.
os() {
osname=$(uname | tr '[:upper:]' '[:lower:]')
case $osname in
cygwin* | mingw*) osname="windows" ;;
esac
echo "$osname"
}
# Create a symlink at $2 pointing to $1 on any platform. Anything that
# currently exists at $2 will be deleted.
symlink() {
source="$1"
dest="$2"
rm -rf "$dest"
case $OS in
windows) mklink /J "$dest" "$source" ;;
*) ln -s "$source" "$dest" ;;
esac
}
ARCH="${NPM_CONFIG_ARCH:-$(detect_arch)}"
# VS Code bundles some modules into an asar which is an archive format that
# works like tar. It then seems to get unpacked into node_modules.asar.
#
# I don't know why they do this but all the dependencies they bundle already
# exist in node_modules so just symlink it. We have to do this since not only
# Code itself but also extensions will look specifically in this directory for
# files (like the ripgrep binary or the oniguruma wasm).
symlink_asar() {
symlink node_modules node_modules.asar
}
# Make a symlink at bin/$1/$3 pointing to the platform-specific version of the
# script in $2. The extension of the link will be .cmd for Windows otherwise it
# will be whatever is in $4 (or no extension if $4 is not set).
symlink_bin_script() {
oldpwd="$(pwd)"
cd "bin/$1"
source="$2"
dest="$3"
ext="${4-}"
case $OS in
windows) symlink "$source.cmd" "$dest.cmd" ;;
darwin | macos) symlink "$source-darwin.sh" "$dest$ext" ;;
*) symlink "$source-linux.sh" "$dest$ext" ;;
esac
cd "$oldpwd"
}
command_exists() {
if [ ! "$1" ]; then return 1; fi
command -v "$@" > /dev/null
}
is_root() {
if command_exists id && [ "$(id -u)" = 0 ]; then
return 0
fi
return 1
}
OS="$(os)"
main() {
# Grabs the major version of node from $npm_config_user_agent which looks like
# yarn/1.21.1 npm/? node/v14.2.0 darwin x64
major_node_version=$(echo "$npm_config_user_agent" | sed -n 's/.*node\/v\([^.]*\).*/\1/p')
if [ "$major_node_version" -lt 12 ]; then
echo "code-server currently requires at least node v12"
echo "We have detected that you are on node v$major_node_version"
echo "See https://github.com/cdr/code-server/issues/1633"
exit 1
if [ -n "${FORCE_NODE_VERSION:-}" ]; then
echo "WARNING: Overriding required Node.js version to v$FORCE_NODE_VERSION"
echo "This could lead to broken functionality, and is unsupported."
echo "USE AT YOUR OWN RISK!"
fi
case "${npm_config_user_agent-}" in npm*)
# We are running under npm.
if [ "${npm_config_unsafe_perm-}" != "true" ]; then
echo "Please pass --unsafe-perm to npm to install code-server"
echo "Otherwise the postinstall script does not have permissions to run"
echo "See https://docs.npmjs.com/misc/config#unsafe-perm"
echo "See https://stackoverflow.com/questions/49084929/npm-sudo-global-installation-unsafe-perm"
exit 1
if [ "$major_node_version" -ne "${FORCE_NODE_VERSION:-22}" ]; then
echo "ERROR: code-server currently requires node v22."
if [ -n "$FORCE_NODE_VERSION" ]; then
echo "However, you have overrided the version check to use v$FORCE_NODE_VERSION."
fi
;;
esac
OS="$(uname | tr '[:upper:]' '[:lower:]')"
if curl -fsSL "https://github.com/cdr/cloud-agent/releases/latest/download/cloud-agent-$OS-$ARCH" -o ./lib/coder-cloud-agent; then
chmod +x ./lib/coder-cloud-agent
else
echo "Failed to download cloud agent; --link will not work"
echo "We have detected that you are on node v$major_node_version"
echo "You can override this version check by setting \$FORCE_NODE_VERSION,"
echo "but configurations that do not use the same node version are unsupported."
exit 1
fi
if ! vscode_yarn; then
# Under npm, if we are running as root, we need --unsafe-perm otherwise
# post-install scripts will not have sufficient permissions to do their thing.
if is_root; then
case "${npm_config_user_agent-}" in npm*)
if [ "${npm_config_unsafe_perm-}" != "true" ]; then
echo "Please pass --unsafe-perm to npm to install code-server"
echo "Otherwise post-install scripts will not have permissions to run"
echo "See https://docs.npmjs.com/misc/config#unsafe-perm"
echo "See https://stackoverflow.com/questions/49084929/npm-sudo-global-installation-unsafe-perm"
exit 1
fi
;;
esac
fi
if ! vscode_install; then
echo "You may not have the required dependencies to build the native modules."
echo "Please see https://github.com/cdr/code-server/blob/master/docs/npm.md"
echo "Please see https://github.com/coder/code-server/blob/main/docs/npm.md"
exit 1
fi
if [ -n "${FORCE_NODE_VERSION:-}" ]; then
echo "WARNING: The required Node.js version was overriden to v$FORCE_NODE_VERSION"
echo "This could lead to broken functionality, and is unsupported."
echo "USE AT YOUR OWN RISK!"
fi
}
vscode_yarn() {
cd lib/vscode
yarn --production --frozen-lockfile
install_with_yarn_or_npm() {
echo "User agent: ${npm_config_user_agent-none}"
# For development we enforce npm, but for installing the package as an
# end-user we want to keep using whatever package manager is in use.
case "${npm_config_user_agent-}" in
npm*)
if ! npm install --unsafe-perm --omit=dev; then
return 1
fi
;;
yarn*)
if ! yarn --production --frozen-lockfile --no-default-rc; then
return 1
fi
;;
*)
echo "Could not determine which package manager is being used to install code-server"
exit 1
;;
esac
return 0
}
# This is a copy of symlink_asar in ../lib.sh. Look there for details.
if [ ! -e node_modules.asar ]; then
if [ "${WINDIR-}" ]; then
mklink /J node_modules.asar node_modules
else
ln -s node_modules node_modules.asar
fi
vscode_install() {
echo 'Installing Code dependencies...'
cd lib/vscode
if ! install_with_yarn_or_npm; then
return 1
fi
symlink_asar
symlink_bin_script remote-cli code code-server
symlink_bin_script helpers browser browser .sh
cd extensions
yarn --production --frozen-lockfile
for ext in */; do
ext="${ext%/}"
echo "extensions/$ext: installing dependencies"
cd "$ext"
yarn --production --frozen-lockfile
cd "$OLDPWD"
done
if ! install_with_yarn_or_npm; then
return 1
fi
return 0
}
main "$@"

View File

@ -1,19 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
# Downloads the release artifacts from CI for the current
# commit and then uploads them to the release with the version
# in package.json.
# You will need $GITHUB_TOKEN set.
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
download_artifact release-packages ./release-packages
local assets=(./release-packages/code-server*"$VERSION"*{.tar.gz,.deb,.rpm})
EDITOR=true gh release upload "v$VERSION" "${assets[@]}"
}
main "$@"

View File

@ -1,50 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
# Creates a draft release with the template for the version in package.json
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
gh release create "v$VERSION" \
--notes-file - \
--target "$(git rev-parse HEAD)" \
--draft <<EOF
v$VERSION
VS Code v$(vscode_version)
Upgrading is as easy as installing the new version over the old one. code-server
maintains all user data in \`~/.local/share/code-server\` so that it is preserved in between
installations.
## New Features
⭐ Summarize new features here with references to issues
- item
## Bug Fixes
⭐ Summarize bug fixes here with references to issues
- item
## Documentation
⭐ Summarize doc changes here with references to issues
- item
## Development
⭐ Summarize development/testing changes here with references to issues
- item
Cheers! 🍻
EOF
}
main "$@"

View File

@ -1,103 +0,0 @@
#!/usr/bin/env bash
# Description: This is a script to make the release process easier
# Run it with `yarn release:prep` and it will do the following:
# 1. Check that you have gh installed and that you're signed in
# 2. Update the version of code-server (package.json, docs, etc.)
# 3. Update the code coverage badge in the README
# 4. Open a draft PR using the release_template.md and view in browser
# If you want to perform a dry run of this script run DRY_RUN=1 yarn release:prep
set -euo pipefail
main() {
if [ "${DRY_RUN-}" = 1 ]; then
echo "Performing a dry run..."
CMD="echo"
else
CMD=''
fi
cd "$(dirname "$0")/../.."
# Check that gh is installed
if ! command -v gh &>/dev/null; then
echo "gh could not be found."
echo "We use this with the release-github-draft.sh and release-github-assets.sh scripts."
echo -e "See docs here: https://github.com/cli/cli#installation"
exit
fi
# Check that they have jq installed
if ! command -v jq &>/dev/null; then
echo "jq could not be found."
echo "We use this to parse the package.json and grab the current version of code-server."
echo -e "See docs here: https://stedolan.github.io/jq/download/"
exit
fi
# Check that they have rg installed
if ! command -v rg &>/dev/null; then
echo "rg could not be found."
echo "We use this when updating files across the codebase."
echo -e "See docs here: https://github.com/BurntSushi/ripgrep#installation"
exit
fi
# Check that they have node installed
if ! command -v node &>/dev/null; then
echo "node could not be found."
echo "That's surprising..."
echo "We use it in this script for getting the package.json version"
echo -e "See docs here: https://nodejs.org/en/download/"
exit
fi
# Check that gh is authenticated
if ! gh auth status -h github.com &>/dev/null; then
echo "gh isn't authenticated to github.com."
echo "This is needed for our scripts that use gh."
echo -e "See docs regarding authentication: https://cli.github.com/manual/gh_auth_login"
exit
fi
# Note: we need to set upstream as well or the gh pr create step will fail
# See: https://github.com/cli/cli/issues/575
CURRENT_BRANCH=$(git branch | grep '\*' | cut -d' ' -f2-)
if [[ -z $(git config "branch.${CURRENT_BRANCH}.remote") ]]; then
echo "Doesn't look like you've pushed this branch to remote"
# Note: we need to set upstream as well or the gh pr create step will fail
# See: https://github.com/cli/cli/issues/575
echo "Please set the upstream and then run the script"
exit 1
fi
# credit to jakwuh for this solution
# https://gist.github.com/DarrenN/8c6a5b969481725a4413#gistcomment-1971123
CODE_SERVER_CURRENT_VERSION=$(node -pe "require('./package.json').version")
# Ask which version we should update to
# In the future, we'll automate this and determine the latest version automatically
echo "Current version: ${CODE_SERVER_CURRENT_VERSION}"
# The $'\n' adds a line break. See: https://stackoverflow.com/a/39581815/3015595
read -r -p "What version of code-server do you want to update to?"$'\n' CODE_SERVER_VERSION_TO_UPDATE
echo -e "Great! We'll prep a PR for updating to $CODE_SERVER_VERSION_TO_UPDATE\n"
$CMD rg -g '!yarn.lock' -g '!*.svg' --files-with-matches --fixed-strings "${CODE_SERVER_CURRENT_VERSION}" | $CMD xargs sd "$CODE_SERVER_CURRENT_VERSION" "$CODE_SERVER_VERSION_TO_UPDATE"
# Ensure the tests are passing and code coverage is up-to-date
echo -e "Running unit tests and updating code coverage...\n"
$CMD yarn test:unit
$CMD git commit -am "chore(release): bump version to $CODE_SERVER_VERSION_TO_UPDATE"
# This runs from the root so that's why we use this path vs. ../../
RELEASE_TEMPLATE_STRING=$(cat ./.github/PULL_REQUEST_TEMPLATE/release_template.md)
echo -e "\nOpening a draft PR on GitHub"
# To read about these flags, visit the docs: https://cli.github.com/manual/gh_pr_create
$CMD gh pr create --base main --title "release: $CODE_SERVER_VERSION_TO_UPDATE" --body "$RELEASE_TEMPLATE_STRING" --reviewer @cdr/code-server-reviewers --repo cdr/code-server --draft
# Open PR in browser
$CMD gh pr view --web
}
main "$@"

View File

@ -1,29 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
# Makes sure the release works.
# This is to make sure we don't have Node version errors or any other
# compilation-related errors.
main() {
cd "$(dirname "${0}")/../.."
local EXTENSIONS_DIR
EXTENSIONS_DIR="$(mktemp -d)"
echo "Testing standalone release."
# Note: using a basic theme extension because it doesn't update often and is more reliable for testing
./release-standalone/bin/code-server --extensions-dir "$EXTENSIONS_DIR" --install-extension wesbos.theme-cobalt2
local installed_extensions
installed_extensions="$(./release-standalone/bin/code-server --extensions-dir "$EXTENSIONS_DIR" --list-extensions 2>&1)"
# We use grep as wesbos.theme-cobalt2 may have dependency extensions that change.
if ! echo "$installed_extensions" | grep -q "wesbos.theme-cobalt2"; then
echo "Unexpected output from listing extensions:"
echo "$installed_extensions"
exit 1
fi
echo "Standalone release works correctly."
}
main "$@"

View File

@ -1,12 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
# Prevents integration with moderate or higher vulnerabilities
# Docs: https://github.com/IBM/audit-ci#options
yarn audit-ci --moderate
}
main "$@"

26
ci/dev/doctoc.sh Executable file
View File

@ -0,0 +1,26 @@
#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
doctoc --title '# FAQ' docs/FAQ.md > /dev/null
doctoc --title '# Setup Guide' docs/guide.md > /dev/null
doctoc --title '# Install' docs/install.md > /dev/null
doctoc --title '# npm Install Requirements' docs/npm.md > /dev/null
doctoc --title '# Contributing' docs/CONTRIBUTING.md > /dev/null
doctoc --title '# Maintaining' docs/MAINTAINING.md > /dev/null
doctoc --title '# Contributor Covenant Code of Conduct' docs/CODE_OF_CONDUCT.md > /dev/null
doctoc --title '# iPad' docs/ipad.md > /dev/null
doctoc --title '# Termux' docs/termux.md > /dev/null
if [[ ${CI-} && $(git ls-files --other --modified --exclude-standard) ]]; then
echo "Files need generation or are formatted incorrectly:"
git -c color.ui=always status | grep --color=no '\[31m'
echo "Please run the following locally:"
echo " npm run doctoc"
exit 1
fi
}
main "$@"

View File

@ -1,45 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
local prettierExts
prettierExts=(
"*.js"
"*.ts"
"*.tsx"
"*.html"
"*.json"
"*.css"
"*.md"
"*.toml"
"*.yaml"
"*.yml"
"*.sh"
)
prettier --write --loglevel=warn $(
git ls-files "${prettierExts[@]}" | grep -v "lib/vscode" | grep -v 'helm-chart'
)
doctoc --title '# FAQ' docs/FAQ.md >/dev/null
doctoc --title '# Setup Guide' docs/guide.md >/dev/null
doctoc --title '# Install' docs/install.md >/dev/null
doctoc --title '# npm Install Requirements' docs/npm.md >/dev/null
doctoc --title '# Contributing' docs/CONTRIBUTING.md >/dev/null
doctoc --title '# Maintaining' docs/MAINTAINING.md >/dev/null
doctoc --title '# Contributor Covenant Code of Conduct' docs/CODE_OF_CONDUCT.md >/dev/null
doctoc --title '# iPad' docs/ipad.md >/dev/null
doctoc --title '# Termux' docs/termux.md >/dev/null
doctoc --title '# Changelog' CHANGELOG.md >/dev/null
if [[ ${CI-} && $(git ls-files --other --modified --exclude-standard) ]]; then
echo "Files need generation or are formatted incorrectly:"
git -c color.ui=always status | grep --color=no '\[31m'
echo "Please run the following locally:"
echo " yarn fmt"
exit 1
fi
}
main "$@"

View File

@ -1,44 +1,50 @@
#!/bin/sh
set -eu
# Generate icons from a single favicon.svg. favicon.svg should have no fill
# colors set.
main() {
cd src/browser/media
# We need .ico for backwards compatibility.
# The other two are the only icon sizes required by Chrome and
# we use them for stuff like apple-touch-icon as well.
# https://web.dev/add-manifest/
# We need .ico for backwards compatibility. The other two are the only icon
# sizes required by Chrome and we use them for stuff like apple-touch-icon as
# well. https://web.dev/add-manifest/
#
# This should be enough and we can always add more if there are problems.
#
# -quiet to avoid https://github.com/ImageMagick/ImageMagick/issues/884
# -background defaults to white but we want it transparent.
# -density somehow makes the image both sharper and smaller in file size.
#
# https://imagemagick.org/script/command-line-options.php#background
convert -quiet -background transparent -resize 256x256 favicon.svg favicon.ico
# We do not generate the pwa-icon from the favicon as they are slightly different
# designs and sizes.
# See favicon.afdesign and #2401 for details on the differences.
convert -quiet -background transparent -resize 192x192 pwa-icon.png pwa-icon-192.png
convert -quiet -background transparent -resize 512x512 pwa-icon.png pwa-icon-512.png
convert -quiet -background transparent \
-resize 256x256 -density 256x256 \
favicon.svg favicon.ico
# We use -quiet above to avoid https://github.com/ImageMagick/ImageMagick/issues/884
# Generate PWA icons. There should be enough padding to support masking.
convert -quiet -border 60x60 -bordercolor white -background white \
-resize 192x192 -density 192x192 \
favicon.svg pwa-icon-maskable-192.png
convert -quiet -border 160x160 -bordercolor white -background white \
-resize 512x512 -density 512x512 \
favicon.svg pwa-icon-maskable-512.png
# The following adds dark mode support for the favicon as favicon-dark-support.svg
# There is no similar capability for pwas or .ico so we can only add support to the svg.
favicon_dark_style="<style>
@media (prefers-color-scheme: dark) {
* {
fill: white;
}
}
</style>"
# See https://stackoverflow.com/a/22901380/4283659
# This escapes all newlines so that sed will accept them.
favicon_dark_style="$(printf "%s\n" "$favicon_dark_style" | sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/\\n/g')"
sed "$(
cat -n <<EOF
s%<rect id="favicon"%$favicon_dark_style<rect id="favicon"%
EOF
)" favicon.svg >favicon-dark-support.svg
# Generate non-maskable PWA icons.
magick pwa-icon-maskable-192.png \
\( +clone -threshold 101% -fill white -draw "roundRectangle 0,0 %[fx:int(w)],%[fx:int(h)] 50,50" \) \
-channel-fx "| gray=>alpha" \
pwa-icon-192.png
magick pwa-icon-maskable-512.png \
\( +clone -threshold 101% -fill white -draw "roundRectangle 0,0 %[fx:int(w)],%[fx:int(h)] 100,100" \) \
-channel-fx "| gray=>alpha" \
pwa-icon-512.png
# The following adds dark mode support for the favicon as
# favicon-dark-support.svg There is no similar capability for pwas or .ico so
# we can only add support to the svg.
favicon_dark_style="<style>@media (prefers-color-scheme: dark) {* { fill: white; }}</style>"
cp favicon.svg favicon-dark-support.svg
sed "s%<path%$favicon_dark_style\n <path%" favicon.svg > favicon-dark-support.svg
}
main "$@"

9
ci/dev/lint-scripts.sh Executable file
View File

@ -0,0 +1,9 @@
#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
shellcheck -e SC2046,SC2164,SC2154,SC1091,SC1090,SC2002 $(git ls-files '*.sh' | grep -v 'lib/vscode')
}
main "$@"

View File

@ -1,21 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
eslint --max-warnings=0 --fix $(git ls-files "*.ts" "*.tsx" "*.js" | grep -v "lib/vscode")
stylelint $(git ls-files "*.css" | grep -v "lib/vscode")
tsc --noEmit --skipLibCheck
shellcheck -e SC2046,SC2164,SC2154,SC1091,SC1090,SC2002 $(git ls-files "*.sh" | grep -v "lib/vscode")
if command -v helm && helm kubeval --help >/dev/null; then
helm kubeval ci/helm-chart
fi
cd lib/vscode
# Run this periodically in vanilla VS code to make sure we don't add any more warnings.
yarn -s eslint --max-warnings=3
cd "$OLDPWD"
}
main "$@"

View File

@ -1,19 +1,38 @@
#!/usr/bin/env bash
set -euo pipefail
# Install dependencies in $1.
install-deps() {
local args=()
if [[ ${CI-} ]]; then
args+=(ci)
else
args+=(install)
fi
# If there is no package.json then npm will look upward and end up installing
# from the root resulting in an infinite loop (this can happen if you have not
# checked out the submodule yet for example).
if [[ ! -f "$1/package.json" ]]; then
echo "$1/package.json is missing; did you run git submodule update --init?"
exit 1
fi
pushd "$1"
echo "Installing dependencies for $PWD"
npm "${args[@]}"
popd
}
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
# This installs the dependencies needed for testing
cd test
yarn
cd ..
cd lib/vscode
yarn ${CI+--frozen-lockfile}
symlink_asar
install-deps test
install-deps test/e2e/extensions/test-extension
# We don't need these when running the integration tests
# so you can pass SKIP_SUBMODULE_DEPS
if [[ ! ${SKIP_SUBMODULE_DEPS-} ]]; then
install-deps lib/vscode
fi
}
main "$@"

3
ci/dev/preinstall.js Normal file
View File

@ -0,0 +1,3 @@
if (process.env.npm_execpath.includes("yarn")) {
throw new Error("`yarn` is no longer supported; please use `npm install` instead")
}

View File

@ -1,12 +1,50 @@
#!/usr/bin/env bash
set -euo pipefail
help() {
echo >&2 " You can build with 'npm run watch' or you can build a release"
echo >&2 " For example: 'npm run build && npm run build:vscode && KEEP_MODULES=1 npm run release'"
echo >&2 " Then 'CODE_SERVER_TEST_ENTRY=./release npm run test:e2e'"
echo >&2 " You can manually run that release with 'node ./release'"
}
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
pushd test/e2e/extensions/test-extension
echo "Building test extension"
npm run build
popd
local dir="$PWD"
if [[ ! ${CODE_SERVER_TEST_ENTRY-} ]]; then
echo "Set CODE_SERVER_TEST_ENTRY to test another build of code-server"
else
pushd "$CODE_SERVER_TEST_ENTRY"
dir="$PWD"
popd
fi
echo "Testing build in '$dir'"
# Simple sanity checks to see that we've built. There could still be things
# wrong (native modules version issues, incomplete build, etc).
if [[ ! -d $dir/out ]]; then
echo >&2 "No code-server build detected"
help
exit 1
fi
if [[ ! -d $dir/lib/vscode/out ]]; then
echo >&2 "No VS Code build detected"
help
exit 1
fi
cd test
# We set these environment variables because they're used in the e2e tests
# they don't have to be these values, but these are the defaults
PASSWORD=e45432jklfdsab CODE_SERVER_ADDRESS=http://localhost:8080 yarn folio --config=config.ts --reporter=list "$@"
./node_modules/.bin/playwright test "$@"
}
main "$@"

39
ci/dev/test-integration.sh Executable file
View File

@ -0,0 +1,39 @@
#!/usr/bin/env bash
set -euo pipefail
help() {
echo >&2 " You can build the standalone release with 'npm run release:standalone'"
echo >&2 " Or you can pass in a custom path."
echo >&2 " CODE_SERVER_PATH='/var/tmp/coder/code-server/bin/code-server' npm run test:integration"
}
# Make sure a code-server release works. You can pass in the path otherwise it
# will look for release-standalone in the current directory.
#
# This is to make sure we don't have Node version errors or any other
# compilation-related errors.
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
local path="$RELEASE_PATH-standalone/bin/code-server"
if [[ ! ${CODE_SERVER_PATH-} ]]; then
echo "Set CODE_SERVER_PATH to test another build of code-server"
else
path="$CODE_SERVER_PATH"
fi
echo "Running tests with code-server binary: '$path'"
if [[ ! -f $path ]]; then
echo >&2 "No code-server build detected"
echo >&2 "Looked in $path"
help
exit 1
fi
CODE_SERVER_PATH="$path" ./test/node_modules/.bin/jest "$@" --coverage=false --testRegex "./test/integration" --testPathIgnorePatterns "./test/integration/fixtures"
}
main "$@"

39
ci/dev/test-native.sh Executable file
View File

@ -0,0 +1,39 @@
#!/usr/bin/env bash
set -euo pipefail
help() {
echo >&2 " You can build the standalone release with 'npm run release:standalone'"
echo >&2 " Or you can pass in a custom path."
echo >&2 " CODE_SERVER_PATH='/var/tmp/coder/code-server/bin/code-server' npm run test:integration"
}
# Make sure a code-server release works. You can pass in the path otherwise it
# will look for release-standalone in the current directory.
#
# This is to make sure we don't have Node version errors or any other
# compilation-related errors.
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
local path="$RELEASE_PATH-standalone/bin/code-server"
if [[ ! ${CODE_SERVER_PATH-} ]]; then
echo "Set CODE_SERVER_PATH to test another build of code-server"
else
path="$CODE_SERVER_PATH"
fi
echo "Running tests with code-server binary: '$path'"
if [[ ! -f $path ]]; then
echo >&2 "No code-server build detected"
echo >&2 "Looked in $path"
help
exit 1
fi
CODE_SERVER_PATH="$path" ./test/node_modules/.bin/jest "$@" --coverage=false --testRegex "./test/integration/help.test.ts"
}
main "$@"

View File

@ -3,11 +3,7 @@ set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
yarn fmt
yarn lint
yarn _audit
yarn test:unit
bats ./test/scripts
}
main "$@"

View File

@ -3,13 +3,13 @@ set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
cd test/unit/test-plugin
make -s out/index.js
source ./ci/lib.sh
# We must keep jest in a sub-directory. See ../../test/package.json for more
# information. We must also run it from the root otherwise coverage will not
# include our source files.
cd "$OLDPWD"
CS_DISABLE_PLUGINS=true ./test/node_modules/.bin/jest "$@"
./test/node_modules/.bin/jest "$@" --testRegex "./test/unit/.*ts"
}
main "$@"

View File

@ -1,133 +0,0 @@
#!/usr/bin/env bash
# Description: This is a script to make the process of updating vscode versions easier
# Run it with `yarn update:vscode` and it will do the following:
# 1. Check that you have a remote called `vscode`
# 2. Ask you which version you want to upgrade to
# 3. Grab the exact version from the package.json i.e. 1.53.2
# 4. Fetch the vscode remote branches to run the subtree update
# 5. Run the subtree update and pull in the vscode update
# 6. Commit the changes (including merge conflicts)
# 7. Open a draft PR
set -euo pipefail
# This function expects two arguments
# 1. the vscode version we're updating to
# 2. the list of merge conflict files
make_pr_body() {
local BODY="This PR updates vscode to $1
## TODOS
- [ ] test editor locally
- [ ] test terminal locally
- [ ] make notes about any significant changes in docs/CONTRIBUTING.md#notes-about-changes
## Files with conflicts (fix these)
$2"
echo "$BODY"
}
main() {
cd "$(dirname "$0")/../.."
# Check if the remote exists
# if it doesn't, we add it
if ! git config remote.vscode.url >/dev/null; then
echo "Could not find 'vscode' as a remote"
echo "Adding with: git remote add vscode https://github.com/microsoft/vscode.git"
git remote add vscode https://github.com/microsoft/vscode.git
fi
# Ask which version we should update to
# In the future, we'll automate this and grab the latest version automatically
read -r -p "What version of VSCode would you like to update to? (i.e. 1.52) " VSCODE_VERSION_TO_UPDATE
# Check that this version exists
if [[ -z $(git ls-remote --heads vscode release/"$VSCODE_VERSION_TO_UPDATE") ]]; then
echo "Oops, that doesn't look like a valid version."
echo "You entered: $VSCODE_VERSION_TO_UPDATE"
echo "Verify that this branches exists here: https://github.com/microsoft/vscode/branches/all?query=release%2F$VSCODE_VERSION_TO_UPDATE"
exit 1
fi
# Check that they have jq installed
if ! command -v jq &>/dev/null; then
echo "jq could not be found."
echo "We use this when looking up the exact version to update to in the package.json in VS Code."
echo -e "See docs here: https://stedolan.github.io/jq/download/"
exit 1
fi
# Note: `git subtree` returns 129 when installed, and prints help;
# but when uninstalled, returns 1.
set +e
git subtree &>/dev/null
if [ $? -ne 129 ]; then
echo "git-subtree could not be found."
echo "We use this to fetch and update the lib/vscode subtree."
echo -e "Please install git subtree."
exit 1
fi
set -e
# Grab the exact version from package.json
VSCODE_EXACT_VERSION=$(curl -s "https://raw.githubusercontent.com/microsoft/vscode/release/$VSCODE_VERSION_TO_UPDATE/package.json" | jq -r ".version")
echo -e "Great! We'll prep a PR for updating to $VSCODE_EXACT_VERSION\n"
# For some reason the subtree update doesn't work
# unless we fetch all the branches
echo -e "Fetching vscode branches..."
echo -e "Note: this might take a while"
git fetch vscode
# Check if GitHub CLI is installed
if ! command -v gh &>/dev/null; then
echo "GitHub CLI could not be found."
echo "If you install it before you run this script next time, we'll open a draft PR for you!"
echo -e "See docs here: https://github.com/cli/cli#installation\n"
exit
fi
# Push branch to remote if not already pushed
# If we don't do this, the opening a draft PR step won't work
# because it will stop and ask where you want to push the branch
CURRENT_BRANCH=$(git branch | grep '\*' | cut -d' ' -f2-)
if [[ -z $(git config "branch.${CURRENT_BRANCH}.remote") ]]; then
echo "Doesn't look like you've pushed this branch to remote"
echo -e "Pushing now using: git push origin $CURRENT_BRANCH\n"
# Note: we need to set upstream as well or the gh pr create step will fail
# See: https://github.com/cli/cli/issues/575
echo "Please set the upstream and re-run the script"
exit 1
fi
echo "Going to try to update vscode for you..."
echo -e "Running: git subtree pull --prefix lib/vscode vscode release/${VSCODE_VERSION_TO_UPDATE} --squash\n"
# Try to run subtree update command
# Note: we add `|| true` because we want the script to keep running even if the squash fails
# We know the squash fails everytime because there will always be merge conflicts
git subtree pull --prefix lib/vscode vscode release/"${VSCODE_VERSION_TO_UPDATE}" --squash || true
# Get the files with conflicts before we commit them
# so we can list them in the PR body as todo items
CONFLICTS=$(git diff --name-only --diff-filter=U | while read -r line; do echo "- [ ] $line"; done)
PR_BODY=$(make_pr_body "$VSCODE_EXACT_VERSION" "$CONFLICTS")
echo -e "\nForcing a commit with conflicts"
echo "Note: this is intentional"
echo "If we don't do this, code review is impossible."
echo -e "For more info, see docs: docs/CONTRIBUTING.md#updating-vs-code\n"
# We need --no-verify to skip the husky pre-commit hook
# which fails because of the merge conflicts
git add . && git commit -am "chore(vscode): update to $VSCODE_EXACT_VERSION" --no-verify
# Note: we can't open a draft PR unless their are changes.
# Hence why we do this after the subtree update.
echo "Opening a draft PR on GitHub"
# To read about these flags, visit the docs: https://cli.github.com/manual/gh_pr_create
gh pr create --base main --title "feat(vscode): update to version $VSCODE_EXACT_VERSION" --body "$PR_BODY" --reviewer @cdr/code-server-reviewers --repo cdr/code-server --draft
}
main "$@"

View File

@ -1,194 +1,143 @@
import * as cp from "child_process"
import Bundler from "parcel-bundler"
import { spawn, ChildProcess } from "child_process"
import * as path from "path"
import { onLine, OnLineCallback } from "../../src/node/util"
interface DevelopmentCompilers {
[key: string]: ChildProcess | undefined
vscode: ChildProcess
vscodeWebExtensions: ChildProcess
codeServer: ChildProcess
plugins: ChildProcess | undefined
}
class Watcher {
private rootPath = path.resolve(process.cwd())
private readonly paths = {
/** Path to uncompiled VS Code source. */
vscodeDir: path.join(this.rootPath, "lib/vscode"),
pluginDir: process.env.PLUGIN_DIR,
}
//#region Web Server
/** Development web server. */
private webServer: ChildProcess | undefined
private reloadWebServer = (): void => {
if (this.webServer) {
this.webServer.kill()
}
// Pass CLI args, save for `node` and the initial script name.
const args = process.argv.slice(2)
this.webServer = spawn("node", [path.join(this.rootPath, "out/node/entry.js"), ...args])
onLine(this.webServer, (line) => console.log("[code-server]", line))
const { pid } = this.webServer
this.webServer.on("exit", () => console.log("[code-server]", `Web process ${pid} exited`))
console.log("\n[code-server]", `Spawned web server process ${pid}`)
}
//#endregion
//#region Compilers
private readonly compilers: DevelopmentCompilers = {
codeServer: spawn("tsc", ["--watch", "--pretty", "--preserveWatchOutput"], { cwd: this.rootPath }),
vscode: spawn("npm", ["run", "watch"], { cwd: this.paths.vscodeDir }),
vscodeWebExtensions: spawn("npm", ["run", "watch-web"], { cwd: this.paths.vscodeDir }),
plugins: this.paths.pluginDir
? spawn("npm", ["run", "build", "--watch"], { cwd: this.paths.pluginDir })
: undefined,
}
public async initialize(): Promise<void> {
for (const event of ["SIGINT", "SIGTERM"]) {
process.on(event, () => this.dispose(0))
}
for (const [processName, devProcess] of Object.entries(this.compilers)) {
if (!devProcess) continue
devProcess.on("exit", (code) => {
console.log(`[${processName}]`, "Terminated unexpectedly")
this.dispose(code)
})
if (devProcess.stderr) {
devProcess.stderr.on("data", (d: string | Uint8Array) => process.stderr.write(d))
}
}
onLine(this.compilers.vscode, this.parseVSCodeLine)
onLine(this.compilers.codeServer, this.parseCodeServerLine)
if (this.compilers.plugins) {
onLine(this.compilers.plugins, this.parsePluginLine)
}
}
//#endregion
//#region Line Parsers
private parseVSCodeLine: OnLineCallback = (strippedLine, originalLine) => {
if (!strippedLine.length) return
console.log("[Code OSS]", originalLine)
if (strippedLine.includes("Finished compilation with")) {
console.log("[Code OSS] ✨ Finished compiling! ✨", "(Refresh your web browser ♻️)")
this.reloadWebServer()
}
}
private parseCodeServerLine: OnLineCallback = (strippedLine, originalLine) => {
if (!strippedLine.length) return
console.log("[Compiler][code-server]", originalLine)
if (strippedLine.includes("Watching for file changes")) {
console.log("[Compiler][code-server]", "Finished compiling!", "(Refresh your web browser ♻️)")
this.reloadWebServer()
}
}
private parsePluginLine: OnLineCallback = (strippedLine, originalLine) => {
if (!strippedLine.length) return
console.log("[Compiler][Plugin]", originalLine)
if (strippedLine.includes("Watching for file changes...")) {
this.reloadWebServer()
}
}
//#endregion
//#region Utilities
private dispose(code: number | null): void {
for (const [processName, devProcess] of Object.entries(this.compilers)) {
console.log(`[${processName}]`, "Killing...\n")
devProcess?.removeAllListeners()
devProcess?.kill()
}
process.exit(typeof code === "number" ? code : 0)
}
//#endregion
}
async function main(): Promise<void> {
try {
const watcher = new Watcher()
await watcher.watch()
} catch (error) {
await watcher.initialize()
} catch (error: any) {
console.error(error.message)
process.exit(1)
}
}
class Watcher {
private readonly rootPath = path.resolve(__dirname, "../..")
private readonly vscodeSourcePath = path.join(this.rootPath, "lib/vscode")
private static log(message: string, skipNewline = false): void {
process.stdout.write(message)
if (!skipNewline) {
process.stdout.write("\n")
}
}
public async watch(): Promise<void> {
let server: cp.ChildProcess | undefined
const restartServer = (): void => {
if (server) {
server.kill()
}
const s = cp.fork(path.join(this.rootPath, "out/node/entry.js"), process.argv.slice(2))
console.log(`[server] spawned process ${s.pid}`)
s.on("exit", () => console.log(`[server] process ${s.pid} exited`))
server = s
}
const vscode = cp.spawn("yarn", ["watch"], { cwd: this.vscodeSourcePath })
const tsc = cp.spawn("tsc", ["--watch", "--pretty", "--preserveWatchOutput"], { cwd: this.rootPath })
const plugin = process.env.PLUGIN_DIR
? cp.spawn("yarn", ["build", "--watch"], { cwd: process.env.PLUGIN_DIR })
: undefined
const bundler = this.createBundler()
const cleanup = (code?: number | null): void => {
Watcher.log("killing vs code watcher")
vscode.removeAllListeners()
vscode.kill()
Watcher.log("killing tsc")
tsc.removeAllListeners()
tsc.kill()
if (plugin) {
Watcher.log("killing plugin")
plugin.removeAllListeners()
plugin.kill()
}
if (server) {
Watcher.log("killing server")
server.removeAllListeners()
server.kill()
}
Watcher.log("killing bundler")
process.exit(code || 0)
}
process.on("SIGINT", () => cleanup())
process.on("SIGTERM", () => cleanup())
vscode.on("exit", (code) => {
Watcher.log("vs code watcher terminated unexpectedly")
cleanup(code)
})
tsc.on("exit", (code) => {
Watcher.log("tsc terminated unexpectedly")
cleanup(code)
})
if (plugin) {
plugin.on("exit", (code) => {
Watcher.log("plugin terminated unexpectedly")
cleanup(code)
})
}
const bundle = bundler.bundle().catch(() => {
Watcher.log("parcel watcher terminated unexpectedly")
cleanup(1)
})
bundler.on("buildEnd", () => {
console.log("[parcel] bundled")
})
bundler.on("buildError", (error) => {
console.error("[parcel]", error)
})
vscode.stderr.on("data", (d) => process.stderr.write(d))
tsc.stderr.on("data", (d) => process.stderr.write(d))
if (plugin) {
plugin.stderr.on("data", (d) => process.stderr.write(d))
}
// From https://github.com/chalk/ansi-regex
const pattern = [
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))",
].join("|")
const re = new RegExp(pattern, "g")
/**
* Split stdout on newlines and strip ANSI codes.
*/
const onLine = (proc: cp.ChildProcess, callback: (strippedLine: string, originalLine: string) => void): void => {
let buffer = ""
if (!proc.stdout) {
throw new Error("no stdout")
}
proc.stdout.setEncoding("utf8")
proc.stdout.on("data", (d) => {
const data = buffer + d
const split = data.split("\n")
const last = split.length - 1
for (let i = 0; i < last; ++i) {
callback(split[i].replace(re, ""), split[i])
}
// The last item will either be an empty string (the data ended with a
// newline) or a partial line (did not end with a newline) and we must
// wait to parse it until we get a full line.
buffer = split[last]
})
}
let startingVscode = false
let startedVscode = false
onLine(vscode, (line, original) => {
console.log("[vscode]", original)
// Wait for watch-client since "Finished compilation" will appear multiple
// times before the client starts building.
if (!startingVscode && line.includes("Starting watch-client")) {
startingVscode = true
} else if (startingVscode && line.includes("Finished compilation")) {
if (startedVscode) {
bundle.then(restartServer)
}
startedVscode = true
}
})
onLine(tsc, (line, original) => {
// tsc outputs blank lines; skip them.
if (line !== "") {
console.log("[tsc]", original)
}
if (line.includes("Watching for file changes")) {
bundle.then(restartServer)
}
})
if (plugin) {
onLine(plugin, (line, original) => {
// tsc outputs blank lines; skip them.
if (line !== "") {
console.log("[plugin]", original)
}
if (line.includes("Watching for file changes")) {
bundle.then(restartServer)
}
})
}
}
private createBundler(out = "dist"): Bundler {
return new Bundler(
[
path.join(this.rootPath, "src/browser/register.ts"),
path.join(this.rootPath, "src/browser/serviceWorker.ts"),
path.join(this.rootPath, "src/browser/pages/login.ts"),
path.join(this.rootPath, "src/browser/pages/vscode.ts"),
],
{
outDir: path.join(this.rootPath, out),
cacheDir: path.join(this.rootPath, ".cache"),
minify: !!process.env.MINIFY,
logLevel: 1,
publicUrl: ".",
},
)
}
}
main()

View File

@ -1,6 +1,6 @@
apiVersion: v2
name: code-server
description: A Helm chart for cdr/code-server
description: A Helm chart for coder/code-server
# A chart can be either an 'application' or a 'library' chart.
#
@ -15,9 +15,9 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 1.0.3
version: 3.32.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
appVersion: 3.10.0
appVersion: 4.108.0

View File

@ -1,117 +0,0 @@
# code-server
![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.10.0](https://img.shields.io/badge/AppVersion-3.10.0-informational?style=flat-square)
[code-server](https://github.com/cdr/code-server) code-server is VS Code running
on a remote server, accessible through the browser.
This chart is community maintained by [@Matthew-Beckett](https://github.com/Matthew-Beckett) and [@alexgorbatchev](https://github.com/alexgorbatchev)
## TL;DR;
```console
$ git clone https://github.com/cdr/code-server
$ cd code-server
$ helm upgrade --install code-server ci/helm-chart
```
## Introduction
This chart bootstraps a code-server deployment on a
[Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh)
package manager.
## Prerequisites
- Kubernetes 1.6+
## Installing the Chart
To install the chart with the release name `code-server`:
```console
$ git clone https://github.com/cdr/code-server
$ cd code-server
$ helm upgrade --install code-server ci/helm-chart
```
The command deploys code-server on the Kubernetes cluster in the default
configuration. The [configuration](#configuration) section lists the parameters
that can be configured during installation.
> **Tip**: List all releases using `helm list`
## Uninstalling the Chart
To uninstall/delete the `code-server` deployment:
```console
$ helm delete code-server
```
The command removes all the Kubernetes components associated with the chart and
deletes the release.
## Configuration
The following table lists the configurable parameters of the code-server chart
and their default values.
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| extraArgs | list | `[]` | |
| extraConfigmapMounts | list | `[]` | |
| extraContainers | string | `""` | |
| extraSecretMounts | list | `[]` | |
| extraVars | list | `[]` | |
| extraVolumeMounts | list | `[]` | |
| fullnameOverride | string | `""` | |
| hostnameOverride | string | `""` | |
| image.pullPolicy | string | `"Always"` | |
| image.repository | string | `"codercom/code-server"` | |
| image.tag | string | `"3.10.0"` | |
| imagePullSecrets | list | `[]` | |
| ingress.enabled | bool | `false` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.accessMode | string | `"ReadWriteOnce"` | |
| persistence.annotations | object | `{}` | |
| persistence.enabled | bool | `true` | |
| persistence.size | string | `"1Gi"` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext.enabled | bool | `true` | |
| securityContext.fsGroup | int | `1000` | |
| securityContext.runAsUser | int | `1000` | |
| service.port | int | `8443` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `nil` | |
| tolerations | list | `[]` | |
| volumePermissions.enabled | bool | `true` | |
| volumePermissions.securityContext.runAsUser | int | `0` | |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm
install`. For example,
```console
$ helm upgrade --install code-server \
ci/helm-chart \
--set persistence.enabled=false
```
The above command sets the the persistence storage to false.
Alternatively, a YAML file that specifies the values for the above parameters
can be provided while installing the chart. For example,
```console
$ helm upgrade --install code-server ci/helm-chart -f values.yaml
```
> **Tip**: You can use the default [values.yaml](values.yaml)

View File

@ -15,9 +15,8 @@
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "code-server.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SERVICE_IP:{{ .Values.service.port }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "code-server.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl port-forward $POD_NAME 8080:80
kubectl port-forward --namespace {{ .Release.Namespace }} service/{{ include "code-server.fullname" . }} 8080:http
{{- end }}
Administrator credentials:

View File

@ -3,33 +3,39 @@ kind: Deployment
metadata:
name: {{ include "code-server.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "code-server.name" . }}
helm.sh/chart: {{ include "code-server.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- include "code-server.labels" . | nindent 4 }}
{{- if .Values.annotations }}
annotations: {{- toYaml .Values.annotations | nindent 4 }}
{{- end }}
spec:
replicas: 1
replicas: {{ .Values.replicaCount | default 1 }}
strategy:
type: Recreate
selector:
matchLabels:
app.kubernetes.io/name: {{ include "code-server.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- include "code-server.selectorLabels" . | nindent 6 }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "code-server.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- include "code-server.selectorLabels" . | nindent 8 }}
{{- if .Values.podAnnotations }}
annotations: {{- toYaml .Values.podAnnotations | nindent 8 }}
{{- end }}
spec:
imagePullSecrets: {{- toYaml .Values.imagePullSecrets | nindent 8 }}
{{- if .Values.hostnameOverride }}
hostname: {{ .Values.hostnameOverride }}
{{- end }}
{{- if .Values.priorityClassName }}
priorityClassName: {{ .Values.priorityClassName }}
{{- end }}
{{- if .Values.securityContext.enabled }}
securityContext:
fsGroup: {{ .Values.securityContext.fsGroup }}
{{- end }}
{{- if and .Values.volumePermissions.enabled .Values.persistence.enabled }}
{{- if or (and .Values.volumePermissions.enabled .Values.persistence.enabled) .Values.extraInitContainers }}
initContainers:
{{- if and .Values.volumePermissions.enabled .Values.persistence.enabled }}
- name: init-chmod-data
image: busybox:latest
imagePullPolicy: IfNotPresent
@ -44,9 +50,13 @@ spec:
- name: data
mountPath: /home/coder
{{- end }}
{{- if .Values.extraInitContainers }}
{{ tpl .Values.extraInitContainers . | indent 6}}
{{- end }}
{{- end }}
containers:
{{- if .Values.extraContainers }}
{{ toYaml .Values.extraContainers | indent 8}}
{{ tpl .Values.extraContainers . | indent 8}}
{{- end }}
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
@ -55,6 +65,17 @@ spec:
securityContext:
runAsUser: {{ .Values.securityContext.runAsUser }}
{{- end }}
{{- if .Values.lifecycle.enabled }}
lifecycle:
{{- if .Values.lifecycle.postStart }}
postStart:
{{ toYaml .Values.lifecycle.postStart | nindent 14 }}
{{- end }}
{{- if .Values.lifecycle.preStop }}
preStop:
{{ toYaml .Values.lifecycle.preStop | nindent 14 }}
{{- end }}
{{- end }}
env:
{{- if .Values.extraVars }}
{{ toYaml .Values.extraVars | indent 10 }}
@ -84,6 +105,7 @@ spec:
{{- range .Values.extraSecretMounts }}
- name: {{ .name }}
mountPath: {{ .mountPath }}
subPath: {{ .subPath | default "" }}
readOnly: {{ .readOnly }}
{{- end }}
{{- range .Values.extraVolumeMounts }}
@ -96,13 +118,18 @@ spec:
- name: http
containerPort: 8080
protocol: TCP
{{- range .Values.extraPorts }}
- name: {{ .name }}
containerPort: {{ .port }}
protocol: {{ .protocol }}
{{- end }}
livenessProbe:
httpGet:
path: /
path: /healthz
port: http
readinessProbe:
httpGet:
path: /
path: /healthz
port: http
resources:
{{- toYaml .Values.resources | nindent 12 }}
@ -112,7 +139,7 @@ spec:
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- tpl . $ | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
@ -139,14 +166,23 @@ spec:
secretName: {{ .secretName }}
defaultMode: {{ .defaultMode }}
{{- end }}
{{- range .Values.extraConfigmapMounts }}
- name: {{ .name }}
configMap:
name: {{ .configMap }}
defaultMode: {{ .defaultMode }}
{{- end }}
{{- range .Values.extraVolumeMounts }}
- name: {{ .name }}
{{- if .existingClaim }}
persistentVolumeClaim:
claimName: {{ .existingClaim }}
{{- else }}
{{- else if .hostPath }}
hostPath:
path: {{ .hostPath }}
type: Directory
{{- else }}
emptyDir:
{{- toYaml .emptyDir | nindent 10 }}
{{- end }}
{{- end }}

View File

@ -1,7 +1,9 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "code-server.fullname" . -}}
{{- $svcPort := .Values.service.port -}}
{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
{{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1
{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1beta1
{{- else -}}
apiVersion: extensions/v1beta1
@ -16,6 +18,9 @@ metadata:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if .Values.ingress.ingressClassName }}
ingressClassName: {{ .Values.ingress.ingressClassName }}
{{- end }}
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
@ -27,6 +32,22 @@ spec:
{{- end }}
{{- end }}
rules:
{{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion -}}
{{- range .Values.ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
{{- range .paths }}
- path: {{ . }}
pathType: Prefix
backend:
service:
name: {{ $fullName }}
port:
number: {{ $svcPort }}
{{- end }}
{{- end }}
{{- else -}}
{{- range .Values.ingress.hosts }}
- host: {{ .host | quote }}
http:
@ -39,3 +60,4 @@ spec:
{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

@ -9,10 +9,7 @@ metadata:
{{ toYaml . | indent 4 }}
{{- end }}
labels:
app.kubernetes.io/name: {{ include "code-server.name" . }}
helm.sh/chart: {{ include "code-server.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- include "code-server.labels" . | nindent 4 }}
spec:
accessModes:
- {{ .Values.persistence.accessMode | quote }}

View File

@ -1,3 +1,4 @@
{{- if not .Values.existingSecret }}
apiVersion: v1
kind: Secret
metadata:
@ -5,14 +6,12 @@ metadata:
annotations:
"helm.sh/hook": "pre-install"
labels:
app.kubernetes.io/name: {{ include "code-server.name" . }}
helm.sh/chart: {{ include "code-server.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- include "code-server.labels" . | nindent 4 }}
type: Opaque
data:
{{ if .Values.password }}
{{- if .Values.password }}
password: "{{ .Values.password | b64enc }}"
{{ else }}
{{- else }}
password: "{{ randAlphaNum 24 | b64enc }}"
{{ end }}
{{- end }}
{{- end }}

View File

@ -3,10 +3,7 @@ kind: Service
metadata:
name: {{ include "code-server.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "code-server.name" . }}
helm.sh/chart: {{ include "code-server.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- include "code-server.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type }}
ports:
@ -14,6 +11,12 @@ spec:
targetPort: http
protocol: TCP
name: http
{{- range .Values.extraPorts }}
- port: {{ .port }}
targetPort: {{ .port }}
protocol: {{ .protocol }}
name: {{ .name }}
{{- end }}
selector:
app.kubernetes.io/name: {{ include "code-server.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}

View File

@ -3,9 +3,6 @@ apiVersion: v1
kind: ServiceAccount
metadata:
labels:
app.kubernetes.io/name: {{ include "code-server.name" . }}
helm.sh/chart: {{ include "code-server.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- include "code-server.labels" . | nindent 4 }}
name: {{ template "code-server.serviceAccountName" . }}
{{- end -}}

View File

@ -3,16 +3,13 @@ kind: Pod
metadata:
name: "{{ include "code-server.fullname" . }}-test-connection"
labels:
app.kubernetes.io/name: {{ include "code-server.name" . }}
helm.sh/chart: {{ include "code-server.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- include "code-server.labels" . | nindent 4 }}
annotations:
"helm.sh/hook": test-success
"helm.sh/hook": test
spec:
containers:
- name: wget
image: busybox
command: ['wget']
args: ['{{ include "code-server.fullname" . }}:{{ .Values.service.port }}']
args: ['{{ include "code-server.fullname" . }}:{{ .Values.service.port }}/healthz']
restartPolicy: Never

View File

@ -6,14 +6,22 @@ replicaCount: 1
image:
repository: codercom/code-server
tag: '3.10.0'
tag: '4.108.0'
pullPolicy: Always
# Specifies one or more secrets to be used when pulling images from a
# private container repository
# https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry
imagePullSecrets: []
# - name: registry-creds
nameOverride: ""
fullnameOverride: ""
hostnameOverride: ""
# The existing secret to use for code-server authentication in the frontend. the password is stored in the secret under the key `password`
# existingSecret: ""
serviceAccount:
# Specifies whether a service account should be created
create: true
@ -23,18 +31,15 @@ serviceAccount:
# If not set and create is true, a name is generated using the fullname template
name: ""
# Specifies annotations for deployment
annotations: {}
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
priorityClassName: ""
service:
type: ClusterIP
@ -43,13 +48,12 @@ service:
ingress:
enabled: false
#annotations:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
#hosts:
# - host: code-server.example.loc
# paths:
# - /
ingressClassName: ""
#tls:
# - secretName: code-server
# hosts:
@ -57,13 +61,26 @@ ingress:
# Optional additional arguments
extraArgs: []
# - --allow-http
# - --no-auth
# These are the arguments normally passed to code-server; run
# code-server --help for a list of available options.
#
# Each argument and parameter must have its own entry; if you use
# --param value on the command line, then enter it here as:
#
# - --param
# - value
#
# If you receive an error like "Unknown option --param value", it may be
# because both the parameter and value are specified as a single argument,
# rather than two separate arguments (e.g. "- --param value" on a line).
# Optional additional environment variables
extraVars: []
# - name: DISABLE_TELEMETRY
# value: true
# value: "true"
# if dind is desired:
# - name: DOCKER_HOST
# value: "tcp://localhost:2376"
##
## Init containers parameters:
@ -117,33 +134,73 @@ persistence:
# existingClaim: ""
# hostPath: /data
serviceAccount:
create: true
name:
lifecycle:
enabled: false
# postStart:
# exec:
# command:
# - /bin/bash
# - -c
# - curl -s -L SOME_SCRIPT | bash
# for dind, the following may be helpful
# postStart:
# exec:
# command:
# - /bin/sh
# - -c
# - |
# sudo apt-get update \
# && sudo apt-get install -y docker.io
## Enable an Specify container in extraContainers.
## This is meant to allow adding code-server dependencies, like docker-dind.
extraContainers: |
#- name: docker-dind
# image: docker:19.03-dind
# imagePullPolicy: IfNotPresent
# resources:
# requests:
# cpu: 250m
# memory: 256M
# securityContext:
# privileged: true
# procMount: Default
# env:
# - name: DOCKER_TLS_CERTDIR
# value: ""
# - name: DOCKER_DRIVER
# value: "overlay2"
# If docker-dind is used, DOCKER_HOST env is mandatory to set in "extraVars"
# - name: docker-dind
# image: docker:28.3.2-dind
# imagePullPolicy: IfNotPresent
# resources:
# requests:
# cpu: 1
# ephemeral-storage: "50Gi"
# memory: 10Gi
# securityContext:
# privileged: true
# procMount: Default
# env:
# - name: DOCKER_TLS_CERTDIR
# value: "" # disable TLS setup
# command:
# - dockerd
# - --host=unix:///var/run/docker.sock
# - --host=tcp://0.0.0.0:2376
extraInitContainers: |
# - name: customization
# image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
# imagePullPolicy: IfNotPresent
# env:
# - name: SERVICE_URL
# value: https://open-vsx.org/vscode/gallery
# - name: ITEM_URL
# value: https://open-vsx.org/vscode/item
# command:
# - sh
# - -c
# - |
# code-server --install-extension ms-python.python
# code-server --install-extension golang.Go
# volumeMounts:
# - name: data
# mountPath: /home/coder
## Additional code-server secret mounts
extraSecretMounts: []
# - name: secret-files
# mountPath: /etc/secrets
# subPath: private.key # (optional)
# secretName: code-server-secret-files
# readOnly: true
@ -154,6 +211,7 @@ extraVolumeMounts: []
# readOnly: true
# existingClaim: volume-claim
# hostPath: ""
# emptyDir: {}
extraConfigmapMounts: []
# - name: certs-configmap
@ -161,3 +219,8 @@ extraConfigmapMounts: []
# subPath: certificates.crt # (optional)
# configMap: certs-configmap
# readOnly: true
extraPorts: []
# - name: minecraft
# port: 25565
# protocol: tcp

114
ci/lib.sh
View File

@ -2,15 +2,11 @@
set -euo pipefail
pushd() {
builtin pushd "$@" >/dev/null
builtin pushd "$@" > /dev/null
}
popd() {
builtin popd >/dev/null
}
pkg_json_version() {
jq -r .version package.json
builtin popd > /dev/null
}
vscode_version() {
@ -18,83 +14,36 @@ vscode_version() {
}
os() {
local os
os=$(uname | tr '[:upper:]' '[:lower:]')
if [[ $os == "linux" ]]; then
# Alpine's ldd doesn't have a version flag but if you use an invalid flag
# (like --version) it outputs the version to stderr and exits with 1.
local ldd_output
ldd_output=$(ldd --version 2>&1 || true)
if echo "$ldd_output" | grep -iq musl; then
os="alpine"
fi
elif [[ $os == "darwin" ]]; then
os="macos"
fi
echo "$os"
osname=$(uname | tr '[:upper:]' '[:lower:]')
case $osname in
linux)
# Alpine's ldd doesn't have a version flag but if you use an invalid flag
# (like --version) it outputs the version to stderr and exits with 1.
# TODO: Better to check /etc/os-release; see ../install.sh.
ldd_output=$(ldd --version 2>&1 || true)
if echo "$ldd_output" | grep -iq musl; then
osname="alpine"
fi
;;
darwin) osname="macos" ;;
cygwin* | mingw*) osname="windows" ;;
esac
echo "$osname"
}
arch() {
case "$(uname -m)" in
aarch64)
echo arm64
;;
x86_64 | amd64)
echo amd64
;;
*)
echo "unknown architecture $(uname -a)"
exit 1
;;
cpu="$(uname -m)"
case "$cpu" in
aarch64) cpu=arm64 ;;
x86_64) cpu=amd64 ;;
esac
}
# Grabs the most recent ci.yaml github workflow run that was successful and triggered from the same commit being pushd.
# This will contain the artifacts we want.
# https://developer.github.com/v3/actions/workflow-runs/#list-workflow-runs
get_artifacts_url() {
local artifacts_url
local workflow_runs_url="repos/:owner/:repo/actions/workflows/ci.yaml/runs?event=pull_request"
# For releases, we look for run based on the branch name v$code_server_version
# example: v3.10.0
local version_branch="v$VERSION"
artifacts_url=$(gh api "$workflow_runs_url" | jq -r ".workflow_runs[] | select(.head_branch == \"$version_branch\") | .artifacts_url" | head -n 1)
if [[ -z "$artifacts_url" ]]; then
echo >&2 "ERROR: artifacts_url came back empty"
echo >&2 "We looked for a successful run triggered by a pull_request with for code-server version: $code_server_version and a branch named $version_branch"
echo >&2 "URL used for gh API call: $workflow_runs_url"
exit 1
fi
echo "$artifacts_url"
}
# Grabs the artifact's download url.
# https://developer.github.com/v3/actions/artifacts/#list-workflow-run-artifacts
get_artifact_url() {
local artifact_name="$1"
gh api "$(get_artifacts_url)" | jq -r ".artifacts[] | select(.name == \"$artifact_name\") | .archive_download_url" | head -n 1
}
# Uses the above two functions to download a artifact into a directory.
download_artifact() {
local artifact_name="$1"
local dst="$2"
local tmp_file
tmp_file="$(mktemp)"
gh api "$(get_artifact_url "$artifact_name")" >"$tmp_file"
unzip -q -o "$tmp_file" -d "$dst"
rm "$tmp_file"
echo "$cpu"
}
rsync() {
command rsync -a --del "$@"
}
VERSION="$(pkg_json_version)"
export VERSION
ARCH="$(arch)"
export ARCH
OS=$(os)
@ -103,22 +52,3 @@ export OS
# RELEASE_PATH is the destination directory for the release from the root.
# Defaults to release
RELEASE_PATH="${RELEASE_PATH-release}"
# VS Code bundles some modules into an asar which is an archive format that
# works like tar. It then seems to get unpacked into node_modules.asar.
#
# I don't know why they do this but all the dependencies they bundle already
# exist in node_modules so just symlink it. We have to do this since not only VS
# Code itself but also extensions will look specifically in this directory for
# files (like the ripgrep binary or the oniguruma wasm).
symlink_asar() {
if [ ! -L node_modules.asar ]; then
if [ "${WINDIR-}" ]; then
# mklink takes the link name first.
mklink /J node_modules.asar node_modules
else
# ln takes the link name second.
ln -s node_modules node_modules.asar
fi
fi
}

View File

@ -1,20 +1,29 @@
FROM debian:10
# syntax=docker/dockerfile:experimental
ARG BASE=debian:12
FROM scratch AS packages
COPY release-packages/code-server*.deb /tmp/
FROM $BASE
RUN apt-get update \
&& apt-get install -y \
&& apt-get install -y \
curl \
dumb-init \
zsh \
git \
git-lfs \
htop \
locales \
man \
nano \
git \
procps \
openssh-client \
sudo \
vim.tiny \
lsb-release \
man-db \
nano \
openssh-client \
procps \
sudo \
vim-tiny \
wget \
zsh \
&& git lfs install \
&& rm -rf /var/lib/apt/lists/*
# https://wiki.debian.org/Locale#Manually
@ -22,19 +31,25 @@ RUN sed -i "s/# en_US.UTF-8/en_US.UTF-8/" /etc/locale.gen \
&& locale-gen
ENV LANG=en_US.UTF-8
RUN adduser --gecos '' --disabled-password coder && \
echo "coder ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/nopasswd
RUN if grep -q 1000 /etc/passwd; then \
userdel -r "$(id -un 1000)"; \
fi \
&& adduser --gecos '' --disabled-password coder \
&& echo "coder ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/nopasswd
RUN ARCH="$(dpkg --print-architecture)" && \
curl -fsSL "https://github.com/boxboat/fixuid/releases/download/v0.5/fixuid-0.5-linux-$ARCH.tar.gz" | tar -C /usr/local/bin -xzf - && \
chown root:root /usr/local/bin/fixuid && \
chmod 4755 /usr/local/bin/fixuid && \
mkdir -p /etc/fixuid && \
printf "user: coder\ngroup: coder\n" > /etc/fixuid/config.yml
RUN ARCH="$(dpkg --print-architecture)" \
&& curl -fsSL "https://github.com/boxboat/fixuid/releases/download/v0.6.0/fixuid-0.6.0-linux-$ARCH.tar.gz" | tar -C /usr/local/bin -xzf - \
&& chown root:root /usr/local/bin/fixuid \
&& chmod 4755 /usr/local/bin/fixuid \
&& mkdir -p /etc/fixuid \
&& printf "user: coder\ngroup: coder\n" > /etc/fixuid/config.yml
COPY release-packages/code-server*.deb /tmp/
COPY ci/release-image/entrypoint.sh /usr/bin/entrypoint.sh
RUN dpkg -i /tmp/code-server*$(dpkg --print-architecture).deb && rm /tmp/code-server*.deb
RUN --mount=from=packages,src=/tmp,dst=/tmp/packages dpkg -i /tmp/packages/code-server*$(dpkg --print-architecture).deb
# Allow users to have scripts run on container startup to prepare workspace.
# https://github.com/coder/code-server/issues/5177
ENV ENTRYPOINTD=${HOME}/entrypoint.d
EXPOSE 8080
# This way, if someone sets $DOCKER_USER, docker-exec will still work as

View File

@ -0,0 +1,51 @@
# syntax=docker/dockerfile:experimental
ARG BASE=fedora:39
FROM scratch AS packages
COPY release-packages/code-server*.rpm /tmp/
FROM $BASE
RUN dnf update -y \
&& dnf install -y \
curl \
git \
git-lfs \
htop \
nano \
openssh-clients \
procps \
wget \
zsh \
dumb-init \
glibc-langpack-en \
&& rm -rf /var/cache/dnf
RUN git lfs install
ENV LANG=en_US.UTF-8
RUN echo 'LANG="en_US.UTF-8"' > /etc/locale.conf
RUN useradd -u 1000 coder && echo "coder ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/nopasswd
RUN ARCH="$(uname -m | sed 's/x86_64/amd64/g' | sed 's/aarch64/arm64/g')" \
&& curl -fsSL "https://github.com/boxboat/fixuid/releases/download/v0.6.0/fixuid-0.6.0-linux-$ARCH.tar.gz" | tar -C /usr/local/bin -xzf - \
&& chown root:root /usr/local/bin/fixuid \
&& chmod 4755 /usr/local/bin/fixuid \
&& mkdir -p /etc/fixuid \
&& printf "user: coder\ngroup: coder\n" > /etc/fixuid/config.yml
COPY ci/release-image/entrypoint.sh /usr/bin/entrypoint.sh
RUN --mount=from=packages,src=/tmp,dst=/tmp/packages rpm -i /tmp/packages/code-server*$(uname -m | sed 's/x86_64/amd64/g' | sed 's/aarch64/arm64/g').rpm
# Allow users to have scripts run on container startup to prepare workspace.
# https://github.com/coder/code-server/issues/5177
ENV ENTRYPOINTD=${HOME}/entrypoint.d
EXPOSE 8080
# This way, if someone sets $DOCKER_USER, docker-exec will still work as
# the uid will remain the same. note: only relevant if -u isn't passed to
# docker-run.
USER 1000
ENV USER=coder
WORKDIR /home/coder
ENTRYPOINT ["/usr/bin/entrypoint.sh", "--bind-addr", "0.0.0.0:8080", "."]

View File

@ -0,0 +1,51 @@
# syntax=docker/dockerfile:experimental
ARG BASE=opensuse/tumbleweed
FROM scratch AS packages
COPY release-packages/code-server*.rpm /tmp/
FROM $BASE
RUN zypper dup -y \
&& zypper in -y \
curl \
git \
git-lfs \
htop \
nano \
openssh-clients \
procps \
wget \
zsh \
sudo \
catatonit \
&& rm -rf /var/cache/zypp /var/cache/zypper
RUN git lfs install
ENV LANG=en_US.UTF-8
RUN echo 'LANG="en_US.UTF-8"' > /etc/locale.conf
RUN useradd -u 1000 coder && echo "coder ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/nopasswd
RUN ARCH="$(uname -m | sed 's/x86_64/amd64/g' | sed 's/aarch64/arm64/g')" \
&& curl -fsSL "https://github.com/boxboat/fixuid/releases/download/v0.6.0/fixuid-0.6.0-linux-$ARCH.tar.gz" | tar -C /usr/local/bin -xzf - \
&& chown root:root /usr/local/bin/fixuid \
&& chmod 4755 /usr/local/bin/fixuid \
&& mkdir -p /etc/fixuid \
&& printf "user: coder\ngroup: coder\n" > /etc/fixuid/config.yml
COPY ci/release-image/entrypoint-catatonit.sh /usr/bin/entrypoint-catatonit.sh
RUN --mount=from=packages,src=/tmp,dst=/tmp/packages rpm -i /tmp/packages/code-server*$(uname -m | sed 's/x86_64/amd64/g' | sed 's/aarch64/arm64/g').rpm
# Allow users to have scripts run on container startup to prepare workspace.
# https://github.com/coder/code-server/issues/5177
ENV ENTRYPOINTD=${HOME}/entrypoint.d
EXPOSE 8080
# This way, if someone sets $DOCKER_USER, docker-exec will still work as
# the uid will remain the same. note: only relevant if -u isn't passed to
# docker-run.
USER 1000
ENV USER=coder
WORKDIR /home/coder
ENTRYPOINT ["/usr/bin/entrypoint-catatonit.sh", "--bind-addr", "0.0.0.0:8080", "."]

View File

@ -1,11 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
docker build -t "codercom/code-server-$ARCH:$VERSION" -f ./ci/release-image/Dockerfile .
}
main "$@"

View File

@ -0,0 +1,106 @@
# Use this file from the top of the repo, with `-f ci/release-image/docker-bake.hcl`
# Uses env var VERSION if set;
# normally, this is set by ci/lib.sh
variable "VERSION" {
default = "latest"
}
variable "DOCKER_REGISTRY" {
default = "docker.io/codercom/code-server"
}
variable "GITHUB_REGISTRY" {
default = "ghcr.io/coder/code-server"
}
group "default" {
targets = [
"code-server-debian-12",
"code-server-ubuntu-focal",
"code-server-ubuntu-noble",
"code-server-fedora-39",
"code-server-opensuse-tumbleweed",
]
}
function "prepend_hyphen_if_not_null" {
params = [tag]
result = notequal("","${tag}") ? "-${tag}" : "${tag}"
}
# use empty tag (tag="") to generate default tags
function "gen_tags" {
params = [registry, tag]
result = notequal("","${registry}") ? [
notequal("", "${tag}") ? "${registry}:${tag}" : "${registry}:latest",
notequal("latest",VERSION) ? "${registry}:${VERSION}${prepend_hyphen_if_not_null(tag)}" : "",
] : []
}
# helper function to generate tags for docker registry and github registry.
# set (DOCKER|GITHUB)_REGISTRY="" to disable corresponding registry
function "gen_tags_for_docker_and_ghcr" {
params = [tag]
result = concat(
gen_tags("${DOCKER_REGISTRY}", "${tag}"),
gen_tags("${GITHUB_REGISTRY}", "${tag}"),
)
}
target "code-server-debian-12" {
dockerfile = "ci/release-image/Dockerfile"
tags = concat(
gen_tags_for_docker_and_ghcr(""),
gen_tags_for_docker_and_ghcr("debian"),
gen_tags_for_docker_and_ghcr("bookworm"),
)
platforms = ["linux/amd64", "linux/arm64"]
}
target "code-server-ubuntu-focal" {
dockerfile = "ci/release-image/Dockerfile"
tags = concat(
gen_tags_for_docker_and_ghcr("ubuntu"),
gen_tags_for_docker_and_ghcr("focal"),
)
args = {
BASE = "ubuntu:focal"
}
platforms = ["linux/amd64", "linux/arm64"]
}
target "code-server-ubuntu-noble" {
dockerfile = "ci/release-image/Dockerfile"
tags = concat(
gen_tags_for_docker_and_ghcr("noble"),
)
args = {
BASE = "ubuntu:noble"
}
platforms = ["linux/amd64", "linux/arm64"]
}
target "code-server-fedora-39" {
dockerfile = "ci/release-image/Dockerfile.fedora"
tags = concat(
gen_tags_for_docker_and_ghcr("fedora"),
gen_tags_for_docker_and_ghcr("39"),
)
args = {
BASE = "fedora:39"
}
platforms = ["linux/amd64", "linux/arm64"]
}
target "code-server-opensuse-tumbleweed" {
dockerfile = "ci/release-image/Dockerfile.opensuse"
tags = concat(
gen_tags_for_docker_and_ghcr("opensuse"),
gen_tags_for_docker_and_ghcr("tumbleweed"),
)
args = {
BASE = "opensuse/tumbleweed"
}
platforms = ["linux/amd64", "linux/arm64"]
}

View File

@ -0,0 +1,27 @@
#!/bin/sh
set -eu
# We do this first to ensure sudo works below when renaming the user.
# Otherwise the current container UID may not exist in the passwd database.
eval "$(fixuid -q)"
if [ "${DOCKER_USER-}" ]; then
USER="$DOCKER_USER"
if [ "$DOCKER_USER" != "$(whoami)" ]; then
echo "$DOCKER_USER ALL=(ALL) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/nopasswd > /dev/null
# Unfortunately we cannot change $HOME as we cannot move any bind mounts
# nor can we bind mount $HOME into a new home as that requires a privileged container.
sudo usermod --login "$DOCKER_USER" coder
sudo groupmod -n "$DOCKER_USER" coder
sudo sed -i "/coder/d" /etc/sudoers.d/nopasswd
fi
fi
# Allow users to have scripts run on container startup to prepare workspace.
# https://github.com/coder/code-server/issues/5177
if [ -d "${ENTRYPOINTD}" ]; then
find "${ENTRYPOINTD}" -type f -executable -print -exec {} \;
fi
exec catatonit -- /usr/bin/code-server "$@"

View File

@ -5,16 +5,23 @@ set -eu
# Otherwise the current container UID may not exist in the passwd database.
eval "$(fixuid -q)"
if [ "${DOCKER_USER-}" ] && [ "$DOCKER_USER" != "$USER" ]; then
echo "$DOCKER_USER ALL=(ALL) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/nopasswd >/dev/null
# Unfortunately we cannot change $HOME as we cannot move any bind mounts
# nor can we bind mount $HOME into a new home as that requires a privileged container.
sudo usermod --login "$DOCKER_USER" coder
sudo groupmod -n "$DOCKER_USER" coder
if [ "${DOCKER_USER-}" ]; then
USER="$DOCKER_USER"
if [ -z "$(id -u "$DOCKER_USER" 2>/dev/null)" ]; then
echo "$DOCKER_USER ALL=(ALL) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/nopasswd > /dev/null
# Unfortunately we cannot change $HOME as we cannot move any bind mounts
# nor can we bind mount $HOME into a new home as that requires a privileged container.
sudo usermod --login "$DOCKER_USER" coder
sudo groupmod -n "$DOCKER_USER" coder
sudo sed -i "/coder/d" /etc/sudoers.d/nopasswd
sudo sed -i "/coder/d" /etc/sudoers.d/nopasswd
fi
fi
dumb-init /usr/bin/code-server "$@"
# Allow users to have scripts run on container startup to prepare workspace.
# https://github.com/coder/code-server/issues/5177
if [ -d "${ENTRYPOINTD}" ]; then
find "${ENTRYPOINTD}" -type f -executable -print -exec {} \;
fi
exec dumb-init /usr/bin/code-server "$@"

View File

@ -2,12 +2,36 @@
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
# Only sourcing this so we get access to $VERSION
source ./ci/lib.sh
source ./ci/steps/steps-lib.sh
echo "Checking environment variables"
# We need VERSION to bump the brew formula
if ! is_env_var_set "VERSION"; then
echo "VERSION is not set"
exit 1
fi
# We need HOMEBREW_GITHUB_API_TOKEN to push up commits
if ! is_env_var_set "HOMEBREW_GITHUB_API_TOKEN"; then
echo "HOMEBREW_GITHUB_API_TOKEN is not set"
exit 1
fi
# Find the docs for bump-formula-pr here
# https://github.com/Homebrew/brew/blob/master/Library/Homebrew/dev-cmd/bump-formula-pr.rb#L18
brew bump-formula-pr --force --version="${VERSION}" code-server --no-browse --no-audit
local output
if ! output=$(brew bump-formula-pr --version="${VERSION}" code-server --no-browse --no-audit --message="PR opened by @${GITHUB_ACTOR}" 2>&1); then
if [[ $output == *"Duplicate PRs should not be opened"* ]]; then
echo "$VERSION is already submitted"
exit 0
else
echo "$output"
exit 1
fi
fi
}
main "$@"

View File

@ -1,14 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
./ci/release-image/build.sh
mkdir -p release-images
docker save "codercom/code-server-$ARCH:$VERSION" >"release-images/code-server-$ARCH-$VERSION.tar"
}
main "$@"

15
ci/steps/docker-buildx-push.sh Executable file
View File

@ -0,0 +1,15 @@
#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
# NOTE@jsjoeio - this script assumes VERSION exists as an
# environment variable.
# NOTE@jsjoeio - this script assumes that you've downloaded
# the release-packages artifact to ./release-packages before
# running this docker buildx step
docker buildx bake -f ci/release-image/docker-bake.hcl --push
}
main "$@"

View File

@ -4,15 +4,146 @@ set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
source ./ci/steps/steps-lib.sh
if [[ ${CI-} ]]; then
echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" >~/.npmrc
## Authentication tokens
# Needed to publish on NPM
if ! is_env_var_set "NPM_TOKEN"; then
echo "NPM_TOKEN is not set. Cannot publish to npm without credentials."
exit 1
fi
download_artifact npm-package ./release-npm-package
## Publishing Information
# All the variables below are used to determine how we should publish
# the npm package. We also use this information for bumping the version.
# This is because npm won't publish your package unless it's a new version.
# i.e. for development, we bump the version to <current version>-<pr number>-<commit sha>
# example: "version": "4.0.1-4769-ad7b23cfe6ffd72914e34781ef7721b129a23040"
# We use this to grab the PR_NUMBER
if ! is_env_var_set "GITHUB_REF"; then
echo "GITHUB_REF is not set. Are you running this locally? We rely on values provided by GitHub."
exit 1
fi
# We use this when setting NPM_VERSION
if ! is_env_var_set "GITHUB_SHA"; then
echo "GITHUB_SHA is not set. Are you running this locally? We rely on values provided by GitHub."
exit 1
fi
# We use this to determine the NPM_ENVIRONMENT
if ! is_env_var_set "GITHUB_EVENT_NAME"; then
echo "GITHUB_EVENT_NAME is not set. Are you running this locally? We rely on values provided by GitHub."
exit 1
fi
# Check that we're using at least v7 of npm CLI
if ! command -v jq &> /dev/null; then
echo "Couldn't find jq"
echo "We need this in order to modify the package.json for dev builds."
exit 1
fi
# This allows us to publish to npm in CI workflows
if [[ ${CI-} ]]; then
echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > ~/.npmrc
fi
## Environment
# This string is used to determine how we should tag the npm release.
# Environment can be one of three choices:
# "development" - this means we tag with the PR number, allowing
# a developer to install this version with `npm install code-server@<pr-number>`
# "staging" - this means we tag with `beta`, allowing
# a developer to install this version with `npm install code-server@beta`
# "production" - this means we tag with `latest` (default), allowing
# a developer to install this version with `npm install code-server@latest`
if ! is_env_var_set "NPM_ENVIRONMENT"; then
echo "NPM_ENVIRONMENT is not set."
echo "Determining in script based on GITHUB environment variables."
if [[ "$GITHUB_EVENT_NAME" == 'push' && "$GITHUB_REF" == 'refs/heads/main' ]]; then
NPM_ENVIRONMENT="staging"
else
NPM_ENVIRONMENT="development"
fi
fi
# NOTE@jsjoeio - this script assumes we have the artifact downloaded on disk
# That happens in CI as a step before we run this.
# https://github.com/actions/upload-artifact/issues/38
tar -xzf release-npm-package/package.tar.gz
yarn publish --non-interactive release
# We use this to set the name of the package in the
# package.json
PACKAGE_NAME="code-server"
# NOTES:@jsjoeio
# We only need to run npm version for "development" and "staging".
# This is because our release:prep script automatically bumps the version
# in the package.json and we commit it as part of the release PR.
if [[ "$NPM_ENVIRONMENT" == "production" ]]; then
NPM_VERSION="$VERSION"
# This means the npm version will be published as "stable"
# and installed when a user runs `npm install code-server`
NPM_TAG="latest"
else
COMMIT_SHA="$GITHUB_SHA"
if [[ "$NPM_ENVIRONMENT" == "staging" ]]; then
NPM_VERSION="$VERSION-beta-$COMMIT_SHA"
# This means the npm version will be tagged with "beta"
# and installed when a user runs `npm install code-server@beta`
NPM_TAG="beta"
PACKAGE_NAME="@coder/code-server-pr"
fi
if [[ "$NPM_ENVIRONMENT" == "development" ]]; then
# Source: https://github.com/actions/checkout/issues/58#issuecomment-614041550
PR_NUMBER=$(echo "$GITHUB_REF" | awk 'BEGIN { FS = "/" } ; { print $3 }')
NPM_VERSION="$VERSION-$PR_NUMBER-$COMMIT_SHA"
PACKAGE_NAME="@coder/code-server-pr"
# This means the npm version will be tagged with "<pr number>"
# and installed when a user runs `npm install code-server@<pr number>`
NPM_TAG="$PR_NUMBER"
fi
echo "- tag: $NPM_TAG"
echo "- version: $NPM_VERSION"
echo "- package name: $PACKAGE_NAME"
echo "- npm environment: $NPM_ENVIRONMENT"
# We modify the version in the package.json
# to be the current version + the PR number + commit SHA
# or we use current version + beta + commit SHA
# Example: "version": "4.0.1-4769-ad7b23cfe6ffd72914e34781ef7721b129a23040"
# Example: "version": "4.0.1-beta-ad7b23cfe6ffd72914e34781ef7721b129a23040"
pushd release
npm version "$NPM_VERSION"
# Use the development package name
# This is so we don't clutter the code-server versions on npm
# with development versions.
# jq can't edit in place so we must store in memory and echo
local contents
contents="$(jq ".name |= \"$PACKAGE_NAME\"" package.json)"
echo "${contents}" > package.json
popd
fi
# We need to make sure we haven't already published the version.
# If we get error, continue with script because we want to publish
# If version is valid, we check if we're publishing the same one
local hasVersion
if hasVersion=$(npm view "$PACKAGE_NAME@$NPM_VERSION" version 2> /dev/null) && [[ $hasVersion == "$NPM_VERSION" ]]; then
echo "$NPM_VERSION is already published under $PACKAGE_NAME"
return
fi
# Since the dev builds are scoped to @coder
# We pass --access public to ensure npm knows it's not private.
cd release
npm publish --tag "$NPM_TAG" --access public
}
main "$@"

View File

@ -1,37 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
main() {
cd "$(dirname "$0")/../.."
source ./ci/lib.sh
download_artifact release-images ./release-images
if [[ ${CI-} ]]; then
echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
fi
for img in ./release-images/*; do
docker load -i "$img"
done
# We have to ensure the amd64 and arm64 images exist on the remote registry
# in order to build the manifest.
# We don't put the arch in the tag to avoid polluting the main repository.
# These other repositories are private so they don't pollute our organization namespace.
docker push "codercom/code-server-amd64:$VERSION"
docker push "codercom/code-server-arm64:$VERSION"
export DOCKER_CLI_EXPERIMENTAL=enabled
docker manifest create "codercom/code-server:$VERSION" \
"codercom/code-server-amd64:$VERSION" \
"codercom/code-server-arm64:$VERSION"
docker manifest push --purge "codercom/code-server:$VERSION"
docker manifest create "codercom/code-server:latest" \
"codercom/code-server-amd64:$VERSION" \
"codercom/code-server-arm64:$VERSION"
docker manifest push --purge "codercom/code-server:latest"
}
main "$@"

47
ci/steps/steps-lib.sh Executable file
View File

@ -0,0 +1,47 @@
#!/usr/bin/env bash
# This is a library which contains functions used inside ci/steps
#
# We separated it into it's own file so that we could easily unit test
# these functions and helpers
# Checks whether and environment variable is set.
# Source: https://stackoverflow.com/a/62210688/3015595
is_env_var_set() {
local name="${1:-}"
if test -n "${!name:-}"; then
return 0
else
return 1
fi
}
# Checks whether a directory exists.
directory_exists() {
local dir="${1:-}"
if [[ -d "${dir:-}" ]]; then
return 0
else
return 1
fi
}
# Checks whether a file exists.
file_exists() {
local file="${1:-}"
if test -f "${file:-}"; then
return 0
else
return 1
fi
}
# Checks whether a file is executable.
is_executable() {
local file="${1:-}"
if [ -f "${file}" ] && [ -r "${file}" ] && [ -x "${file}" ]; then
return 0
else
return 1
fi
}

View File

@ -1,5 +1,18 @@
<!-- prettier-ignore-start -->
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
# Contributor Covenant Code of Conduct
- [Contributor Covenant Code of Conduct](#contributor-covenant-code-of-conduct)
- [Our Pledge](#our-pledge)
- [Our Standards](#our-standards)
- [Our Responsibilities](#our-responsibilities)
- [Scope](#scope)
- [Enforcement](#enforcement)
- [Attribution](#attribution)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
<!-- prettier-ignore-end -->
# Contributor Covenant Code of Conduct

View File

@ -1,158 +1,296 @@
<!-- prettier-ignore-start -->
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
# Contributing
- [Pull Requests](#pull-requests)
- [Requirements](#requirements)
- [Development Workflow](#development-workflow)
- [Updating VS Code](#updating-vs-code)
- [Notes about Changes](#notes-about-changes)
- [Build](#build)
- [Linux-specific requirements](#linux-specific-requirements)
- [Development workflow](#development-workflow)
- [Version updates to Code](#version-updates-to-code)
- [Patching Code](#patching-code)
- [Build](#build)
- [Creating a Standalone Release](#creating-a-standalone-release)
- [Troubleshooting](#troubleshooting)
- [I see "Forbidden access" when I load code-server in the browser](#i-see-forbidden-access-when-i-load-code-server-in-the-browser)
- ["Can only have one anonymous define call per script"](#can-only-have-one-anonymous-define-call-per-script)
- [Help](#help)
- [Test](#test)
- [Unit tests](#unit-tests)
- [Script tests](#script-tests)
- [Integration tests](#integration-tests)
- [End-to-end tests](#end-to-end-tests)
- [Structure](#structure)
- [Modifications to VS Code](#modifications-to-vs-code)
- [Modifications to Code](#modifications-to-code)
- [Currently Known Issues](#currently-known-issues)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
- [Detailed CI and build process docs](../ci)
## Pull Requests
Please create a [GitHub Issue](https://github.com/cdr/code-server/issues) for each issue
you'd like to address unless the proposed fix is minor.
In your Pull Requests (PR), link to the issue that the PR solves.
Please ensure that the base of your PR is the **master** branch. (Note: The default
GitHub branch is the latest release branch, though you should point all of your changes to be merged into
master).
<!-- prettier-ignore-end -->
## Requirements
The prerequisites for contributing to code-server are almost the same as those for
[VS Code](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#prerequisites).
There are several differences, however. Here is what is needed:
The prerequisites for contributing to code-server are almost the same as those
for [VS Code](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#prerequisites).
Here is what is needed:
- `node` v12.x or greater
- `node` v22.x
- `git` v2.x or greater
- [`yarn`](https://classic.yarnpkg.com/en/)
- used to install JS packages and run scripts
- [`nfpm`](https://classic.yarnpkg.com/en/)
- used to build `.deb` and `.rpm` packages
- [`git-lfs`](https://git-lfs.github.com)
- [`npm`](https://www.npmjs.com/)
- Used to install JS packages and run scripts
- [`nfpm`](https://nfpm.goreleaser.com/)
- Used to build `.deb` and `.rpm` packages
- [`jq`](https://stedolan.github.io/jq/)
- used to build code-server releases
- Used to build code-server releases
- [`gnupg`](https://gnupg.org/index.html)
- all commits must be signed an verified
- see GitHub's ["Managing commit signature verification"](https://docs.github.com/en/github/authenticating-to-github/managing-commit-signature-verification) or follow [this tutorial](https://joeprevite.com/verify-commits-on-github)
- `build-essential` (Linux)
- `apt-get install -y build-essential` - used by VS Code
- All commits must be signed and verified; see GitHub's [Managing commit
signature
verification](https://docs.github.com/en/github/authenticating-to-github/managing-commit-signature-verification)
or follow [this tutorial](https://joeprevite.com/verify-commits-on-github)
- `quilt`
- Used to manage patches to Code
- `rsync` and `unzip`
- used for code-server releases
- Used for code-server releases
- `bats`
- Used to run script unit tests
## Development Workflow
### Linux-specific requirements
If you're developing code-server on Linux, make sure you have installed or
install the following dependencies:
```shell
yarn
yarn watch
# Visit http://localhost:8080 once the build is completed.
sudo apt-get install build-essential g++ libx11-dev libxkbfile-dev libsecret-1-dev libkrb5-dev python-is-python3
```
`yarn watch` will live reload changes to the source.
These are required by Code. See [their Wiki](https://github.com/microsoft/vscode/wiki/How-to-Contribute#prerequisites)
for more information.
### Updating VS Code
## Development workflow
Updating VS Code requires `git subtree`. On some rpm-based Linux distros, `git subtree` is not included by default, and needs to be installed separately.
To install, run `dnf install git-subtree` or `yum install git-subtree` as necessary.
1. `git clone https://github.com/coder/code-server.git` - Clone `code-server`
2. `git submodule update --init` - Clone `vscode` submodule
3. `quilt push -a` - Apply patches to the `vscode` submodule.
4. `npm install` - Install dependencies
5. `npm run watch` - Launch code-server localhost:8080. code-server will be live
reloaded when changes are made; the browser needs to be refreshed manually.
To update VS Code, follow these steps:
When pulling down changes that include modifications to the patches you will
need to apply them with `quilt`. If you pull down changes that update the
`vscode` submodule you will need to run `git submodule update --init` and
re-apply the patches.
1. Run `yarn update:vscode`.
2. Enter a version. Ex. 1.53
3. This will open a draft PR for you.
4. There will be merge conflicts. First commit them.
1. We do this because if we don't, it will be impossible to review your PR.
5. Once they're all fixed, test code-server locally and make sure it all works.
When you make a change that affects people deploying the marketplace please
update the changelog as part of your PR.
#### Notes about Changes
Note that building code-server takes a very, very long time, and loading it in
the browser in development mode also takes a very, very long time.
- watch out for updates to `lib/vscode/src/vs/code/browser/workbench/workbench.html`. You may need to make changes to `src/browser/pages/vscode.html`
Display language (Spanish, etc) support only works in a full build; it will not
work in development mode.
## Build
Generally we prefer that PRs be squashed into `main` but you can rebase or merge
if it is important to keep the individual commits (make sure to clean up the
commits first if you are doing this).
You can build using:
### Version updates to Code
1. Remove any patches with `quilt pop -a`.
2. Update the `lib/vscode` submodule to the desired upstream version branch.
1. `cd lib/vscode && git checkout release/1.66 && cd ../..`
2. `git add lib && git commit -m "chore: update to Code <version>"`
3. Apply the patches one at a time (`quilt push`). If the application succeeds
but the lines changed, update the patch with `quilt refresh`. If there are
conflicts, then force apply with `quilt push -f`, manually add back the
rejected code, then run `quilt refresh`.
4. From the code-server **project root**, run `npm install`.
5. Check the Node.js version that's used by Electron (which is shipped with VS
Code. If necessary, update our version of Node.js to match.
### Patching Code
1. You can go through the patch stack with `quilt push` and `quilt pop`.
2. Create a new patch (`quilt new {name}.diff`) or use an existing patch.
3. Add the file(s) you are patching (`quilt add [-P patch] {file}`). A file
**must** be added before you make changes to it.
4. Make your changes. Patches do not need to be independent of each other but
each patch must result in a working code-server without any broken in-between
states otherwise they are difficult to test and modify.
5. Add your changes to the patch (`quilt refresh`)
6. Add a comment in the patch about the reason for the patch and how to
reproduce the behavior it fixes or adds. Every patch should have an e2e test
as well.
### Build
You can build a full production as follows:
```shell
yarn build
yarn build:vscode
yarn release
git submodule update --init
quilt push -a
npm install
npm run build
VERSION=0.0.0 npm run build:vscode
npm run release
```
Run your build with:
This does not keep `node_modules`. If you want them to be kept, use
`KEEP_MODULES=1 npm run release`
Run your build:
```shell
cd release
yarn --production
npm install --omit=dev # Skip if you used KEEP_MODULES=1
# Runs the built JavaScript with Node.
node .
```
Build the release packages (make sure that you run `yarn release` first):
Then, to build the release package:
```shell
yarn release:standalone
yarn test:standalone-release
yarn package
npm run release:standalone
npm run test:integration
npm run package
```
NOTE: On Linux, the currently running distro will become the minimum supported version.
In our GitHub Actions CI, we use CentOS 7 for maximum compatibility.
If you need your builds to support older distros, run the build commands
inside a Docker container with all the build requirements installed.
> On Linux, the currently running distro will become the minimum supported
> version. In our GitHub Actions CI, we use CentOS 8 for maximum compatibility.
> If you need your builds to support older distros, run the build commands
> inside a Docker container with all the build requirements installed.
#### Creating a Standalone Release
Part of the build process involves creating standalone releases. At the time of
writing, we do this for the following platforms/architectures:
- Linux amd64 (.tar.gz, .deb, and .rpm)
- Linux arm64 (.tar.gz, .deb, and .rpm)
- Linux arm7l (.tar.gz)
- Linux armhf.deb
- Linux armhf.rpm
- macOS arm64.tar.gz
Currently, these are compiled in CI using the `npm run release:standalone`
command in the `release.yaml` workflow. We then upload them to the draft release
and distribute via GitHub Releases.
### Troubleshooting
#### I see "Forbidden access" when I load code-server in the browser
This means your patches didn't apply correctly. We have a patch to remove the
auth from vanilla Code because we use our own.
Try popping off the patches with `quilt pop -a` and reapplying with `quilt push
-a`.
#### "Can only have one anonymous define call per script"
Code might be trying to use a dev or prod HTML in the wrong context. You can try
re-running code-server and setting `VSCODE_DEV=1`.
### Help
If you get stuck or need help, you can always start a new GitHub Discussion
[here](https://github.com/coder/code-server/discussions). One of the maintainers
will respond and help you out.
## Test
There are four kinds of tests in code-server:
1. Unit tests
2. Script tests
3. Integration tests
4. End-to-end tests
### Unit tests
Our unit tests are written in TypeScript and run using
[Jest](https://jestjs.io/), the testing framework].
These live under [test/unit](../test/unit).
We use unit tests for functions and things that can be tested in isolation. The
file structure is modeled closely after `/src` so it's easy for people to know
where test files should live.
### Script tests
Our script tests are written in bash and run using [bats](https://github.com/bats-core/bats-core).
These tests live under `test/scripts`.
We use these to test anything related to our scripts (most of which live under
`ci`).
### Integration tests
These are a work in progress. We build code-server and run tests with `npm run
test:integration`, which ensures that code-server builds work on their
respective platforms.
Our integration tests look at components that rely on one another. For example,
testing the CLI requires us to build and package code-server.
### End-to-end tests
The end-to-end (e2e) tests are written in TypeScript and run using
[Playwright](https://playwright.dev/).
These live under [test/e2e](../test/e2e).
Before the e2e tests run, we run `globalSetup`, which eliminates the need to log
in before each test by preserving the authentication state.
Take a look at `codeServer.test.ts` to see how you would use it (see
`test.use`).
We also have a model where you can create helpers to use within tests. See
[models/CodeServer.ts](../test/e2e/models/CodeServer.ts) for an example.
## Structure
The `code-server` script serves an HTTP API for login and starting a remote VS Code process.
code-server essentially serves as an HTTP API for logging in and starting a
remote Code process.
The CLI code is in [src/node](../src/node) and the HTTP routes are implemented in
[src/node/routes](../src/node/routes).
The CLI code is in [src/node](../src/node) and the HTTP routes are implemented
in [src/node/routes](../src/node/routes).
Most of the meaty parts are in the VS Code portion of the codebase under [lib/vscode](../lib/vscode), which we described next.
Most of the meaty parts are in the Code portion of the codebase under
[lib/vscode](../lib/vscode), which we describe next.
### Modifications to VS Code
### Modifications to Code
In v1 of code-server, we had a patch of VS Code that split the codebase into a front-end
and a server. The front-end consisted of all UI code, while the server ran the extensions
and exposed an API to the front-end for file access and all UI needs.
Our modifications to Code can be found in the [patches](../patches) directory.
We pull in Code as a submodule pointing to an upstream release branch.
Over time, Microsoft added support to VS Code to run it on the web. They have made
the front-end open source, but not the server. As such, code-server v2 (and later) uses
the VS Code front-end and implements the server. We do this by using a git subtree to fork and modify VS Code. This code lives under [lib/vscode](../lib/vscode).
In v1 of code-server, we had Code as a submodule and used a single massive patch
that split the codebase into a front-end and a server. The front-end consisted
of the UI code, while the server ran the extensions and exposed an API to the
front-end for file access and all UI needs.
Some noteworthy changes in our version of VS Code:
Over time, Microsoft added support to Code to run it on the web. They had made
the front-end open source, but not the server. As such, code-server v2 (and
later) uses the Code front-end and implements the server. We did this by using a
Git subtree to fork and modify Code.
- Adding our build file, which includes our code and VS Code's web code
- Allowing multiple extension directories (both user and built-in)
- Modifying the loader, websocket, webview, service worker, and asset requests to
use the URL of the page as a base (and TLS, if necessary for the websocket)
- Sending client-side telemetry through the server
- Allowing modification of the display language
- Making it possible for us to load code on the client
- Making it possible to install extensions of any kind
- Fixing issue with getting disconnected when your machine sleeps or hibernates
- Adding connection type to web socket query parameters
Microsoft eventually made the server open source and we were able to reduce our
changes significantly. Some time later we moved back to a submodule and patches
(managed by `quilt` this time instead of the mega-patch).
As the web portion of VS Code matures, we'll be able to shrink and possibly
eliminate our modifications. In the meantime, upgrading the VS Code version requires
us to ensure that our changes are still applied and work as intended. In the future,
we'd like to run VS Code unit tests against our builds to ensure that features
work as expected.
As the web portion of Code continues to mature, we'll be able to shrink and
possibly eliminate our patches. In the meantime, upgrading the Code version
requires us to ensure that our changes are still applied correctly and work as
intended. In the future, we'd like to run Code unit tests against our builds to
ensure that features work as expected.
**Note**: We have [extension docs](../ci/README.md) on the CI and build system.
> We have [extension docs](../ci/README.md) on the CI and build system.
If the functionality you're working on does NOT depend on code from VS Code, please
If the functionality you're working on does NOT depend on code from Code, please
move it out and into code-server.
### Currently Known Issues
- Creating custom VS Code extensions and debugging them doesn't work
- Creating custom Code extensions and debugging them doesn't work
- Extension profiling and tips are currently disabled

View File

@ -1,161 +1,153 @@
<!-- prettier-ignore-start -->
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
# FAQ
- [Questions?](#questions)
- [iPad Status?](#ipad-status)
- [Community Projects (awesome-code-server)](#community-projects-awesome-code-server)
- [How can I reuse my VS Code configuration?](#how-can-i-reuse-my-vs-code-configuration)
- [Differences compared to VS Code?](#differences-compared-to-vs-code)
- [Installing an extension](#installing-an-extension)
- [How can I request a missing extension?](#how-can-i-request-a-missing-extension)
- [Installing an extension manually](#installing-an-extension-manually)
- [How do I configure the marketplace URL?](#how-do-i-configure-the-marketplace-url)
- [Where are extensions stored?](#where-are-extensions-stored)
- [How is this different from VS Code Codespaces?](#how-is-this-different-from-vs-code-codespaces)
- [How should I expose code-server to the internet?](#how-should-i-expose-code-server-to-the-internet)
- [Can I store my password hashed?](#can-i-store-my-password-hashed)
- [How do I securely access web services?](#how-do-i-securely-access-web-services)
- [Sub-paths](#sub-paths)
- [Sub-domains](#sub-domains)
- [Why does the code-server proxy strip `/proxy/<port>` from the request path?](#why-does-the-code-server-proxy-strip-proxyport-from-the-request-path)
- [Proxying to Create React App](#proxying-to-create-react-app)
- [Multi-tenancy](#multi-tenancy)
- [Docker in code-server container?](#docker-in-code-server-container)
- [How can I disable telemetry?](#how-can-i-disable-telemetry)
- [How does code-server decide what workspace or folder to open?](#how-does-code-server-decide-what-workspace-or-folder-to-open)
- [How do I debug issues with code-server?](#how-do-i-debug-issues-with-code-server)
- [Heartbeat File](#heartbeat-file)
- [Healthz endpoint](#healthz-endpoint)
- [Can I use code-server on the iPad?](#can-i-use-code-server-on-the-ipad)
- [How does the config file work?](#how-does-the-config-file-work)
- [Isn't an install script piped into sh insecure?](#isnt-an-install-script-piped-into-sh-insecure)
- [How do I make my keyboard shortcuts work?](#how-do-i-make-my-keyboard-shortcuts-work)
- [How do I access my Documents/Downloads/Desktop folders in code-server on OSX?](#how-do-i-access-my-documentsdownloadsdesktop-folders-in-code-server-on-osx)
- [Differences compared to Theia?](#differences-compared-to-theia)
- [`$HTTP_PROXY`, `$HTTPS_PROXY`, `$NO_PROXY`](#http_proxy-https_proxy-no_proxy)
- [Enterprise](#enterprise)
- [Why can't code-server use Microsoft's extension marketplace?](#why-cant-code-server-use-microsofts-extension-marketplace)
- [How can I request an extension that's missing from the marketplace?](#how-can-i-request-an-extension-thats-missing-from-the-marketplace)
- [How do I install an extension?](#how-do-i-install-an-extension)
- [How do I install an extension manually?](#how-do-i-install-an-extension-manually)
- [How do I use my own extensions marketplace?](#how-do-i-use-my-own-extensions-marketplace)
- [Where are extensions stored?](#where-are-extensions-stored)
- [Where is VS Code configuration stored?](#where-is-vs-code-configuration-stored)
- [How can I reuse my VS Code configuration?](#how-can-i-reuse-my-vs-code-configuration)
- [How does code-server decide what workspace or folder to open?](#how-does-code-server-decide-what-workspace-or-folder-to-open)
- [How do I access my Documents/Downloads/Desktop folders in code-server on macOS?](#how-do-i-access-my-documentsdownloadsdesktop-folders-in-code-server-on-macos)
- [How do I direct server-side requests through a proxy?](#how-do-i-direct-server-side-requests-through-a-proxy)
- [How do I debug issues with code-server?](#how-do-i-debug-issues-with-code-server)
- [What is the healthz endpoint?](#what-is-the-healthz-endpoint)
- [What is the heartbeat file?](#what-is-the-heartbeat-file)
- [How do I change the password?](#how-do-i-change-the-password)
- [Can I store my password hashed?](#can-i-store-my-password-hashed)
- [Is multi-tenancy possible?](#is-multi-tenancy-possible)
- [Can I use Docker in a code-server container?](#can-i-use-docker-in-a-code-server-container)
- [How do I disable telemetry?](#how-do-i-disable-telemetry)
- [What's the difference between code-server and Coder?](#whats-the-difference-between-code-server-and-coder)
- [What's the difference between code-server and Theia?](#whats-the-difference-between-code-server-and-theia)
- [What's the difference between code-server and OpenVSCode-Server?](#whats-the-difference-between-code-server-and-openvscode-server)
- [What's the difference between code-server and GitHub Codespaces?](#whats-the-difference-between-code-server-and-github-codespaces)
- [What's the difference between code-server and VS Code web?](#whats-the-difference-between-code-server-and-vs-code-web)
- [Does code-server have any security login validation?](#does-code-server-have-any-security-login-validation)
- [Are there community projects involving code-server?](#are-there-community-projects-involving-code-server)
- [How do I change the port?](#how-do-i-change-the-port)
- [How do I hide the coder/coder promotion in Help: Getting Started?](#how-do-i-hide-the-codercoder-promotion-in-help-getting-started)
- [How do I disable the proxy?](#how-do-i-disable-the-proxy)
- [How do I disable file download?](#how-do-i-disable-file-download)
- [Why do web views not work?](#why-do-web-views-not-work)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
<!-- prettier-ignore-end -->
## Questions?
Please file all questions and support requests at <https://github.com/cdr/code-server/discussions>.
Please file all questions and support requests at
<https://github.com/coder/code-server/discussions>.
## iPad Status?
## How should I expose code-server to the internet?
Please see [./ipad.md](./ipad.md).
Please see [our instructions on exposing code-server safely to the
internet](./guide.md).
## Community Projects (awesome-code-server)
## Can I use code-server on the iPad?
Visit the [awesome-code-server](https://github.com/cdr/awesome-code-server) repository to view community projects and guides with code-server! Feel free to add your own!
See [iPad](./ipad.md) for information on using code-server on the iPad.
## How can I reuse my VS Code configuration?
## How does the config file work?
The very popular [Settings Sync](https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync) extension works.
When `code-server` starts up, it creates a default config file in `~/.config/code-server/config.yaml`:
You can also pass `--user-data-dir ~/.vscode` to reuse your existing VS Code extensions and configuration.
```yaml
bind-addr: 127.0.0.1:8080
auth: password
password: mew...22 # Randomly generated for each config.yaml
cert: false
```
Or copy `~/.vscode` into `~/.local/share/code-server`.
The default config defines the following behavior:
## Differences compared to VS Code?
- Listen on the loopback IP port 8080
- Enable password authorization
- Do not use TLS
`code-server` takes the open source core of VS Code and allows you to run it in the browser.
However, it is not entirely equivalent to Microsoft's VS Code.
Each key in the file maps directly to a `code-server` flag (run `code-server --help` to see a listing of all the flags). Any flags passed to `code-server`
will take priority over the config file.
While the core of VS Code is open source, the marketplace and many published Microsoft extensions are not.
You can change the config file's location using the `--config` flag or
`$CODE_SERVER_CONFIG` environment variable.
Furthermore, Microsoft prohibits the use of any non-Microsoft VS Code from accessing their marketplace.
The default location respects `$XDG_CONFIG_HOME`.
See the [TOS](https://cdn.vsassets.io/v/M146_20190123.39/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdf).
## How do I make my keyboard shortcuts work?
> Marketplace Offerings are intended for use only with Visual Studio Products and Services
> and you may only install and use Marketplace Offerings with Visual Studio Products and Services.
Many shortcuts will not work by default, since they'll be "caught" by the browser.
As a result, we cannot offer any extensions on the Microsoft marketplace. Instead,
we have created our own marketplace for open source extensions.
It works by scraping GitHub for VS Code extensions and building them. It's not perfect but getting
better by the day with more and more extensions.
If you use Chrome, you can work around this by installing the progressive web
app (PWA):
These are the closed source extensions presently unavailable:
1. Start the editor
2. Click the **plus** icon in the URL toolbar to install the PWA
1. [Live Share](https://visualstudio.microsoft.com/services/live-share)
- We may implement something similar, see [#33](https://github.com/cdr/code-server/issues/33)
1. [Remote Extensions (SSH, Containers, WSL)](https://github.com/microsoft/vscode-remote-release)
- We may reimplement these at some point, see [#1315](https://github.com/cdr/code-server/issues/1315)
If you use Firefox, you can use the appropriate extension to install PWA.
For more about the closed source parts of VS Code, see [vscodium/vscodium](https://github.com/VSCodium/vscodium#why-does-this-exist).
1. Go to the installation [website](https://addons.mozilla.org/en-US/firefox/addon/pwas-for-firefox/) of the add-on
2. Add the add-on to Firefox
3. Follow the os-specific instructions on how to install the runtime counterpart
### Installing an extension
For other browsers, you'll have to remap keybindings for shortcuts to work.
Extensions can be installed from the marketplace using the extensions sidebar in
## Why can't code-server use Microsoft's extension marketplace?
Though code-server takes the open-source core of VS Code and allows you to run
it in the browser, it is not entirely equivalent to Microsoft's VS Code.
One major difference is in regards to extensions and the marketplace. The core
of VS code is open source, while the marketplace and many published Microsoft
extensions are not. Furthermore, Microsoft prohibits the use of any
non-Microsoft VS Code from accessing their marketplace. Per the [Terms of
Service](https://cdn.vsassets.io/v/M146_20190123.39/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdf):
> Marketplace Offerings are intended for use only with Visual Studio Products
> and Services, and you may only install and use Marketplace Offerings with
> Visual Studio Products and Services.
Because of this, we can't offer any extensions on Microsoft's marketplace.
Instead, we use the [Open-VSX extension gallery](https://open-vsx.org), which is also used by various other forks.
It isn't perfect, but its getting better by the day with more and more extensions.
We also offer our own marketplace for open source extensions, but plan to
deprecate it at a future date and completely migrate to Open-VSX.
These are the closed-source extensions that are presently unavailable:
1. [Live Share](https://visualstudio.microsoft.com/services/live-share). We may
implement something similar (see
[#33](https://github.com/coder/code-server/issues/33))
1. [Remote Extensions (SSH, Containers,
WSL)](https://github.com/microsoft/vscode-remote-release). We may implement
these again at some point, see
([#1315](https://github.com/coder/code-server/issues/1315)).
For more about the closed source portions of VS Code, see [vscodium/vscodium](https://github.com/VSCodium/vscodium#why-does-this-exist).
## How can I request an extension that's missing from the marketplace?
To add an extension to Open-VSX, please see [open-vsx/publish-extensions](https://github.com/open-vsx/publish-extensions).
We no longer plan to add new extensions to our legacy extension gallery.
## How do I install an extension?
You can install extensions from the marketplace using the extensions sidebar in
code-server or from the command line:
```shell
```console
code-server --install-extension <extension id>
# example: code-server --install-extension wesbos.theme-cobalt2
```
## How can I request a missing extension?
We are currently in the process of transitioning to [Open VSX](https://open-vsx.org/).
Once <https://github.com/eclipse/openvsx/issues/249>
is implemented, we can fully make this transition. Therefore, we are no longer
accepting new requests for extension requests.
Instead, we suggest one of the following:
- [Switch to Open VSX](#how-do-i-configure-the-marketplace-url) now
- Download and [install the extension manually](#installing-an-extension-manually)
## Installing an extension manually
If an extension is not available from the marketplace or does not work, you can
grab its VSIX from its GitHub releases or build it yourself.
Once you have downloaded the VSIX to the remote machine you can either:
- Run the `Extensions: Install from VSIX` command in the Command Palette.
- Use `code-server --install-extension <path to vsix>`
You can also download extensions from the command line. For instance, downloading off OpenVSX can be done like this:
```shell
SERVICE_URL=https://open-vsx.org/vscode/gallery ITEM_URL=https://open-vsx.org/vscode/item code-server --install-extension <extension id>
```
## How do I configure the marketplace URL?
If you have your own marketplace that implements the VS Code Extension Gallery API, it is possible to
point code-server to it by setting `$SERVICE_URL` and `$ITEM_URL`. These correspond directly
to `serviceUrl` and `itemUrl` in VS Code's `product.json`.
e.g. to use [open-vsx.org](https://open-vsx.org):
```bash
export SERVICE_URL=https://open-vsx.org/vscode/gallery
export ITEM_URL=https://open-vsx.org/vscode/item
```
While you can technically use Microsoft's marketplace with these, please do not do so as it
is against their terms of use. See [above](#differences-compared-to-vs-code) and this
discussion regarding the use of the Microsoft URLs in forks:
<https://github.com/microsoft/vscode/issues/31168#issue-244533026>
See also [VSCodium's docs](https://github.com/VSCodium/vscodium/blob/master/DOCS.md#extensions--marketplace).
These variables are most valuable to our enterprise customers for whom we have a self hosted marketplace product.
## Where are extensions stored?
Defaults to `~/.local/share/code-server/extensions`.
If the `XDG_DATA_HOME` environment variable is set the data directory will be
`$XDG_DATA_HOME/code-server/extensions`. In general we try to follow the XDG directory spec.
You can install an extension on the CLI with:
```bash
# From the Coder extension marketplace
code-server --install-extension ms-python.python
@ -163,280 +155,110 @@ code-server --install-extension ms-python.python
code-server --install-extension downloaded-ms-python.python.vsix
```
## How is this different from VS Code Codespaces?
## How do I install an extension manually?
VS Code Codespaces is a closed source and paid service by Microsoft. It also allows you to access
VS Code via the browser.
If there's an extension unavailable in the marketplace or an extension that
doesn't work, you can download the VSIX from its GitHub releases or build it
yourself.
However, code-server is free, open source and can be run on any machine without any limitations.
Once you have downloaded the VSIX to the remote machine, you can either:
While you can self host environments with VS Code Codespaces, you still need an Azure billing
account and you have to access VS Code via the Codespaces web dashboard instead of directly
connecting to your instance.
- Run the **Extensions: Install from VSIX** command in the Command Palette.
- Run `code-server --install-extension <path to vsix>` in the terminal
## How should I expose code-server to the internet?
You can also download extensions using the command line. For instance,
downloading from OpenVSX can be done like this:
Please follow [./guide.md](./guide.md) for our recommendations on setting up and using code-server.
code-server only supports password authentication natively.
**note**: code-server will rate limit password authentication attempts at 2 a minute and 12 an hour.
If you want to use external authentication (i.e sign in with Google) you should handle this
with a reverse proxy using something like [oauth2_proxy](https://github.com/pusher/oauth2_proxy)
or [Cloudflare Access](https://teams.cloudflare.com/access).
For HTTPS, you can use a self signed certificate by passing in just `--cert` or
pass in an existing certificate by providing the path to `--cert` and the path to
the key with `--cert-key`.
The self signed certificate will be generated into
`~/.local/share/code-server/self-signed.crt`.
If `code-server` has been passed a certificate it will also respond to HTTPS
requests and will redirect all HTTP requests to HTTPS.
You can use [Let's Encrypt](https://letsencrypt.org/) to get a TLS certificate
for free.
Again, please follow [./guide.md](./guide.md) for our recommendations on setting up and using code-server.
## Can I store my password hashed?
Yes you can! Set the value of `hashed-password` instead of `password`. Generate the hash with:
```
printf "thisismypassword" | sha256sum | cut -d' ' -f1
```shell
code-server --install-extension <extension id>
```
Of course replace `thisismypassword` with your actual password.
## How do I use my own extensions marketplace?
Example:
If you own a marketplace that implements the VS Code Extension Gallery API, you
can point code-server to it by setting `$EXTENSIONS_GALLERY`.
This corresponds directly with the `extensionsGallery` entry in in VS Code's `product.json`.
```yaml
auth: password
hashed-password: 1da9133ab9dbd11d2937ec8d312e1e2569857059e73cc72df92e670928983ab5 # You got this from the command above
For example:
```bash
export EXTENSIONS_GALLERY='{"serviceUrl": "https://my-extensions/api"}'
```
## How do I securely access web services?
Though you can technically use Microsoft's marketplace in this manner, we
strongly discourage you from doing so since this is [against their Terms of Use](#why-cant-code-server-use-microsofts-extension-marketplace).
code-server is capable of proxying to any port using either a subdomain or a
subpath which means you can securely access these services using code-server's
built-in authentication.
For further information, see [this
discussion](https://github.com/microsoft/vscode/issues/31168#issue-244533026)
regarding the use of the Microsoft URLs in forks, as well as [VSCodium's
docs](https://github.com/VSCodium/vscodium/blob/master/DOCS.md#extensions--marketplace).
### Sub-paths
## Where are extensions stored?
Just browse to `/proxy/<port>/`.
Extensions are stored in `~/.local/share/code-server/extensions` by default.
### Sub-domains
On Linux and macOS if you set the `XDG_DATA_HOME` environment variable, the
extensions directory will be `$XDG_DATA_HOME/code-server/extensions`. In
general, we try to follow the XDG directory spec.
You will need a DNS entry that points to your server for each port you want to
access. You can either set up a wildcard DNS entry for `*.<domain>` if your domain
name registrar supports it or you can create one for every port you want to
access (`3000.<domain>`, `8080.<domain>`, etc).
## Where is VS Code configuration stored?
You should also set up TLS certificates for these subdomains, either using a
wildcard certificate for `*.<domain>` or individual certificates for each port.
VS Code configuration such as settings and keybindings are stored in
`~/.local/share/code-server` by default.
Start code-server with the `--proxy-domain` flag set to your domain.
On Linux and macOS if you set the `XDG_DATA_HOME` environment variable, the data
directory will be `$XDG_DATA_HOME/code-server`. In general, we try to follow the
XDG directory spec.
```
code-server --proxy-domain <domain>
```
## How can I reuse my VS Code configuration?
Now you can browse to `<port>.<domain>`. Note that this uses the host header so
ensure your reverse proxy forwards that information if you are using one.
You can use the [Settings
Sync](https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync)
extension for this purpose.
## Why does the code-server proxy strip `/proxy/<port>` from the request path?
HTTP servers should strive to use relative URLs to avoid needed to be coupled to the
absolute path at which they are served. This means you must use trailing slashes on all
paths with subpaths. See <https://blog.cdivilly.com/2019/02/28/uri-trailing-slashes>
This is really the "correct" way things work and why the striping of the base path is the
default. If your application uses relative URLs and does not assume the absolute path at
which it is being served, it will just work no matter what port you decide to serve it off
or if you put it in behind code-server or any other proxy!
However many people prefer the cleaner aesthetic of no trailing slashes. This couples you
to the base path as you cannot use relative redirects correctly anymore. See the above
link.
For users who are ok with this tradeoff, use `/absproxy` instead and the path will be
passed as is. e.g. `/absproxy/3000/my-app-path`
### Proxying to Create React App
You must use `/absproxy/<port>` with create-react-app.
See [#2565](https://github.com/cdr/code-server/issues/2565) and
[#2222](https://github.com/cdr/code-server/issues/2222). You will need to inform
create-react-app of the path at which you are serving via `$PUBLIC_URL` and webpack
via `$WDS_SOCKET_PATH`.
e.g.
```sh
PUBLIC_URL=/absproxy/3000 \
WDS_SOCKET_PATH=$PUBLIC_URL/sockjs-node \
BROWSER=none yarn start
```
Then visit `https://my-code-server-address.io/absproxy/3000` to see your app exposed through
code-server!
Highly recommend using the subdomain approach instead to avoid this class of issue.
## Multi-tenancy
If you want to run multiple code-servers on shared infrastructure, we recommend using virtual
machines with a VM per user. This will easily allow users to run a docker daemon. If you want
to use kubernetes, you'll definitely want to use [kubevirt](https://kubevirt.io) or [sysbox](https://github.com/nestybox/sysbox) to give each
user a VM-like experience instead of just a container.
## Docker in code-server container?
If you'd like to access docker inside of code-server, mount the docker socket in from `/var/run/docker.sock`.
Install the docker CLI in the code-server container and you should be able to access the daemon!
You can even make volume mounts work. Lets say you want to run a container and mount in
`/home/coder/myproject` into it from inside the `code-server` container. You need to make sure
the docker daemon's `/home/coder/myproject` is the same as the one mounted inside the `code-server`
container and the mount will just work.
## How can I disable telemetry?
Use the `--disable-telemetry` flag to completely disable telemetry. We use the
data collected only to improve code-server.
Alternatively, you can also pass `--user-data-dir ~/.vscode` or copy `~/.vscode`
into `~/.local/share/code-server` to reuse your existing VS Code extensions and
configuration.
## How does code-server decide what workspace or folder to open?
code-server tries the following in order:
code-server tries the following in this order:
1. The `workspace` query parameter.
2. The `folder` query parameter.
3. The workspace or directory passed on the command line.
4. The last opened workspace or directory.
1. The `workspace` query parameter
2. The `folder` query parameter
3. The workspace or directory passed via the command line
4. The last opened workspace or directory
## How do I debug issues with code-server?
## How do I access my Documents/Downloads/Desktop folders in code-server on macOS?
First run code-server with at least `debug` logging (or `trace` to be really
thorough) by setting the `--log` flag or the `LOG_LEVEL` environment variable.
`-vvv` and `--verbose` are aliases for `--log trace`.
Newer versions of macOS require permission through a non-UNIX mechanism for
code-server to access the Desktop, Documents, Pictures, Downloads, and other folders.
```
code-server --log debug
```
You may have to give Node.js full disk access, since it doesn't implement any of the macOS permission request features natively:
Once this is done, replicate the issue you're having then collect logging
information from the following places:
1. The most recent files from `~/.local/share/code-server/coder-logs`.
2. The browser console.
3. The browser network tab.
Additionally, collecting core dumps (you may need to enable them first) if
code-server crashes can be helpful.
## Heartbeat File
`code-server` touches `~/.local/share/code-server/heartbeat` once a minute as long
as there is an active browser connection.
If you want to shutdown `code-server` if there hasn't been an active connection in X minutes
you can do so by continuously checking the last modified time on the heartbeat file and if it is
older than X minutes, kill `code-server`.
[#1636](https://github.com/cdr/code-server/issues/1636) will make the experience here better.
## Healthz endpoint
`code-server` exposes an endpoint at `/healthz` which can be used to check
whether `code-server` is up without triggering a heartbeat. The response will
include a status (`alive` or `expired`) and a timestamp for the last heartbeat
(defaults to `0`). This endpoint does not require authentication.
```json
{
"status": "alive",
"lastHeartbeat": 1599166210566
}
```
## How does the config file work?
When `code-server` starts up, it creates a default config file in `~/.config/code-server/config.yaml` that looks
like this:
```yaml
bind-addr: 127.0.0.1:8080
auth: password
password: mewkmdasosafuio3422 # This is randomly generated for each config.yaml
cert: false
```
Each key in the file maps directly to a `code-server` flag. Run `code-server --help` to see
a listing of all the flags.
The default config here says to listen on the loopback IP port 8080, enable password authorization
and no TLS. Any flags passed to `code-server` will take priority over the config file.
The `--config` flag or `$CODE_SERVER_CONFIG` can be used to change the config file's location.
The default location also respects `$XDG_CONFIG_HOME`.
## Isn't an install script piped into sh insecure?
Please give
[this wonderful blogpost](https://sandstorm.io/news/2015-09-24-is-curl-bash-insecure-pgp-verified-install) by
[sandstorm.io](https://sandstorm.io) a read.
## How do I make my keyboard shortcuts work?
Many shortcuts will not work by default as they'll be caught by the browser.
If you use Chrome you can get around this by installing the PWA.
Once you've entered the editor, click the "plus" icon present in the URL toolbar area.
This will install a Chrome PWA and now all keybindings will work!
For other browsers you'll have to remap keybindings unfortunately.
## How do I access my Documents/Downloads/Desktop folders in code-server on OSX?
Newer versions of macOS require permission through a non-UNIX mechanism for access to the Desktop, Documents, Pictures, Downloads, and other folders.
You may have to give Node "full disk access" since it doesn't implement any of the macOS permission request stuff natively.
1. Find where Node is installed on your machine
1. Find where Node.js is installed on your machine
```console
➜ ~ which node
$ which node
/usr/local/bin/node
```
1. Grant Node Full Disk Access:
2. Grant Node.js full disk access. Open **System Preferences** > **Security &
Privacy** > **Privacy** > **Full Disk Access**. Then, click the 🔒 to unlock,
click **+**, and select the Node.js binary you located in the previous step.
Open System Preferences > Security & Privacy > Privacy (horizontal) tab > Full Disk Access (vertical) tab > Click the 🔒 to unlock > Click + and select the Node binary you located.
See [#2794](https://github.com/coder/code-server/issues/2794) for additional context.
See [#2794](https://github.com/cdr/code-server/issues/2794) for context on this.
## How do I direct server-side requests through a proxy?
## Differences compared to Theia?
> code-server proxies only server-side requests.
[Theia](https://github.com/eclipse-theia/theia) is a browser IDE loosely based on VS Code. It uses the same
text editor library named [Monaco](https://github.com/Microsoft/monaco-editor) and the same
extension API but everything else is very different. It also uses [open-vsx.org](https://open-vsx.org)
for extensions which has an order of magnitude less extensions than our marketplace.
See [#1473](https://github.com/cdr/code-server/issues/1473).
To direct server-side requests through a proxy, code-server supports the
following environment variables:
You can't just use your VS Code config in Theia like you can with code-server.
To summarize, code-server is a patched fork of VS Code to run in the browser whereas
Theia takes some parts of VS Code but is an entirely different editor.
## `$HTTP_PROXY`, `$HTTPS_PROXY`, `$NO_PROXY`
code-server supports the standard environment variables to allow directing
server side requests through a proxy.
- `$HTTP_PROXY`
- `$HTTPS_PROXY`
- `$NO_PROXY`
```sh
export HTTP_PROXY=https://134.8.5.4
@ -446,18 +268,250 @@ export HTTPS_PROXY=https://134.8.5.4
code-server
```
- See [proxy-from-env](https://www.npmjs.com/package/proxy-from-env#environment-variables)
for a detailed reference on the various environment variables and their syntax.
- code-server only uses the `http` and `https` protocols.
- See [proxy-agent](https://www.npmjs.com/package/proxy-agent) for the various supported
proxy protocols.
- See
[proxy-from-env](https://www.npmjs.com/package/proxy-from-env#environment-variables)
for a detailed reference on these environment variables and their syntax (note
that code-server only uses the `http` and `https` protocols).
- See [proxy-agent](https://www.npmjs.com/package/proxy-agent) for information
on on the supported proxy protocols.
**note**: Only server side requests will be proxied! This includes fetching extensions,
requests made from extensions etc. To proxy requests from your browser you need to
configure your browser separately. Browser requests would cover exploring the extension
marketplace.
## How do I debug issues with code-server?
## Enterprise
First, run code-server with the `debug` logging (or `trace` to be really
thorough) by setting the `--log` flag or the `LOG_LEVEL` environment variable.
`-vvv` and `--verbose` are aliases for `--log trace`.
Visit [our enterprise page](https://coder.com) for more information about our
enterprise offerings.
First, run code-server with `debug` logging (or `trace` logging for more
thorough messages) by setting the `--log` flag or the `LOG_LEVEL` environment
variable.
```text
code-server --log debug
```
> Note that the `-vvv` and `--verbose` flags are aliases for `--log trace`.
Next, replicate the issue you're having so that you can collect logging
information from the following places:
1. The most recent files from `~/.local/share/code-server/coder-logs`
2. The browser console
3. The browser network tab
Additionally, collecting core dumps (you may need to enable them first) if
code-server crashes can be helpful.
## What is the healthz endpoint?
You can use the `/healthz` endpoint exposed by code-server to check whether
code-server is running without triggering a heartbeat. The response includes a
status (e.g., `alive` or `expired`) and a timestamp for the last heartbeat
(the default is `0`).
```json
{
"status": "alive",
"lastHeartbeat": 1599166210566
}
```
This endpoint doesn't require authentication.
## What is the heartbeat file?
As long as there is an active browser connection, code-server touches
`~/.local/share/code-server/heartbeat` once a minute.
If you want to shutdown code-server if there hasn't been an active connection
after a predetermined amount of time, you can use the --idle-timeout-seconds flag
or set an `CODE_SERVER_IDLE_TIMEOUT_SECONDS` environment variable.
## How do I change the password?
Edit the `password` field in the code-server config file at
`~/.config/code-server/config.yaml`, then restart code-server:
```bash
sudo systemctl restart code-server@$USER
```
## Can I store my password hashed?
Yes, you can do so by setting the value of `hashed-password` instead of `password`. Generate the hash with:
```shell
echo -n "thisismypassword" | npx argon2-cli -e
$argon2i$v=19$m=4096,t=3,p=1$wst5qhbgk2lu1ih4dmuxvg$ls1alrvdiwtvzhwnzcm1dugg+5dto3dt1d5v9xtlws4
```
Replace `thisismypassword` with your actual password and **remember to put it
inside quotes**! For example:
```yaml
auth: password
hashed-password: "$argon2i$v=19$m=4096,t=3,p=1$wST5QhBgk2lu1ih4DMuxvg$LS1alrVdIWtvZHwnzCM1DUGg+5DTO3Dt1d5v9XtLws4"
```
The `hashed-password` field takes precedence over `password`.
If you're using Docker Compose file, in order to make this work, you need to change all the single $ to $$. For example:
```yaml
- HASHED_PASSWORD=$$argon2i$$v=19$$m=4096,t=3,p=1$$wST5QhBgk2lu1ih4DMuxvg$$LS1alrVdIWtvZHwnzCM1DUGg+5DTO3Dt1d5v9XtLws4
```
## Is multi-tenancy possible?
If you want to run multiple code-servers on shared infrastructure, we recommend
using virtual machines (provide one VM per user). This will easily allow users
to run a Docker daemon. If you want to use Kubernetes, you'll want to
use [kubevirt](https://kubevirt.io) or
[sysbox](https://github.com/nestybox/sysbox) to give each user a VM-like
experience instead of just a container.
## Can I use Docker in a code-server container?
If you'd like to access Docker inside of code-server, mount the Docker socket in
from `/var/run/docker.sock`. Then, install the Docker CLI in the code-server
container, and you should be able to access the daemon.
You can even make volume mounts work. Let's say you want to run a container and
mount into `/home/coder/myproject` from inside the `code-server` container. You
need to make sure the Docker daemon's `/home/coder/myproject` is the same as the
one mounted inside the `code-server` container, and the mount will work.
If you want Docker enabled when deploying on Kubernetes, look at the `values.yaml`
file for the 3 fields: `extraVars`, `lifecycle.postStart`, and `extraContainers`.
## How do I disable telemetry?
Use the `--disable-telemetry` flag to disable telemetry.
> We use the data collected only to improve code-server.
## What's the difference between code-server and Coder?
code-server and Coder are both applications that can be installed on any
machine. The main difference is who they serve. Out of the box, code-server is
simply VS Code in the browser while Coder is a tool for provisioning remote
development environments via Terraform.
code-server was built for individuals while Coder was built for teams. In Coder, you create Workspaces which can have applications like code-server. If you're looking for a team solution, you should reach for [Coder](https://github.com/coder/coder).
## What's the difference between code-server and Theia?
At a high level, code-server is a patched fork of VS Code that runs in the
browser whereas Theia takes some parts of VS Code but is an entirely different
editor.
[Theia](https://github.com/eclipse-theia/theia) is a browser IDE loosely based
on VS Code. It uses the same text editor library
([Monaco](https://github.com/Microsoft/monaco-editor)) and extension API, but
everything else is different. Theia also uses [Open VSX](https://open-vsx.org)
for extensions.
Theia doesn't allow you to reuse your existing VS Code config.
## What's the difference between code-server and OpenVSCode-Server?
code-server and OpenVSCode-Server both allow you to access VS Code via a
browser. OpenVSCode-Server is a direct fork of VS Code with changes comitted
directly while code-server pulls VS Code in via a submodule and makes changes
via patch files.
However, OpenVSCode-Server is scoped at only making VS Code available as-is in
the web browser. code-server contains additional changes to make the self-hosted
experience better (see the next section for details).
## What's the difference between code-server and GitHub Codespaces?
Both code-server and GitHub Codespaces allow you to access VS Code via a
browser. GitHub Codespaces, however, is a closed-source, paid service offered by
GitHub and Microsoft.
On the other hand, code-server is self-hosted, free, open-source, and can be run
on any machine with few limitations.
Specific changes include:
- Password authentication
- The ability to host at sub-paths
- Self-contained web views that do not call out to Microsoft's servers
- The ability to use your own marketplace and collect your own telemetry
- Built-in proxy for accessing ports on the remote machine integrated into
VS Code's ports panel
- Settings are stored on disk like desktop VS Code, instead of in browser
storage (note that state is still stored in browser storage).
- Wrapper process that spawns VS Code on-demand and has a separate CLI
- Notification when updates are available
- [Some other things](https://github.com/coder/code-server/tree/main/patches)
Some of these changes appear very unlikely to ever be adopted by Microsoft.
Some may make their way upstream, further closing the gap, but at the moment it
looks like there will always be some subtle differences.
## What's the difference between code-server and VS Code web?
VS Code web (which can be ran using `code serve-web`) has the same differences
as the Codespaces section above. VS Code web can be a better choice if you need
access to the official Microsoft marketplace.
## Does code-server have any security login validation?
code-server supports setting a single password and limits logins to two per
minute plus an additional twelve per hour.
## Are there community projects involving code-server?
Visit the [awesome-code-server](https://github.com/coder/awesome-code-server)
repository to view community projects and guides with code-server! Feel free to
add your own!
## How do I change the port?
There are two ways to change the port on which code-server runs:
1. with an environment variable e.g. `PORT=3000 code-server`
2. using the flag `--bind-addr` e.g. `code-server --bind-addr localhost:3000`
## How do I hide the coder/coder promotion in Help: Getting Started?
You can pass the flag `--disable-getting-started-override` to `code-server` or
you can set the environment variable `CS_DISABLE_GETTING_STARTED_OVERRIDE=1` or
`CS_DISABLE_GETTING_STARTED_OVERRIDE=true`.
## How do I disable the proxy?
You can pass the flag `--disable-proxy` to `code-server` or
you can set the environment variable `CS_DISABLE_PROXY=1` or
`CS_DISABLE_PROXY=true`.
Note, this option currently only disables the proxy routes to forwarded ports, including
the domain and path proxy routes over HTTP and WebSocket; however, it does not
disable the automatic port forwarding in the VS Code workbench itself. In other words,
user will still see the Ports tab and notifications, but will not be able to actually
use access the ports. It is recommended to set `remote.autoForwardPorts` to `false`
when using the option.
## How do I disable file download?
You can pass the flag `--disable-file-downloads` to `code-server`
## Why do web views not work?
Web views rely on service workers, and service workers are only available in a
secure context, so most likely the answer is that you are using an insecure
context (for example an IP address).
If this happens, in the browser log you will see something like:
> Error loading webview: Error: Could not register service workers: SecurityError: Failed to register a ServiceWorker for scope with script: An SSL certificate error occurred when fetching the script..
To fix this, you must either:
- Access over localhost/127.0.0.1 which is always considered secure.
- Use a domain with a real certificate (for example with Let's Encrypt).
- Use a trusted self-signed certificate with [mkcert](https://mkcert.dev) (or
create and trust a certificate manually).
- Disable security if your browser allows it. For example, in Chromium see
`chrome://flags/#unsafely-treat-insecure-origin-as-secure`

View File

@ -1,65 +1,119 @@
<!-- prettier-ignore-start -->
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
# Maintaining
- [Maintaining](#maintaining)
- [Workflow](#workflow)
- [Milestones](#milestones)
- [Triage](#triage)
- [Project Boards](#project-boards)
- [Versioning](#versioning)
- [Releasing](#releasing)
- [Release Candidates](#release-candidates)
- [AUR](#aur)
- [Docker](#docker)
- [Homebrew](#homebrew)
- [nixpkgs](#nixpkgs)
- [npm](#npm)
- [Testing](#testing)
- [Documentation](#documentation)
- [Troubleshooting](#troubleshooting)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
<!-- prettier-ignore-end -->
# Maintaining
We keep code-server up to date with VS Code releases (there are usually two or
three a month) but we are not generally actively developing code-server aside
from fixing regressions.
Current maintainers:
Most of the work is keeping on top of issues and discussions.
- @code-asher
- @oxy
- @jsjoeio
## Releasing
This document is meant to serve current and future maintainers of code-server, but also share openly our workflow for maintaining the project.
1. Check that the changelog lists all the important changes.
2. Make sure the changelog entry lists the current version of VS Code.
3. Update the changelog with the release date.
4. Go to GitHub Actions > Draft release > Run workflow on the commit you want to
release. Make sure CI has finished the build workflow on that commit or this
will fail. For the version we match VS Code's minor and patch version. The
patch number may become temporarily out of sync if we need to put out a
patch, but if we make our own minor change then we will not release it until
the next minor VS Code release.
5. CI will automatically grab the build artifact on that commit (which is why CI
has to have completed), inject the provided version into the `package.json`,
put together platform-specific packages, and upload those packages to a draft
release.
6. Update the resulting draft release with the changelog contents.
7. Publish the draft release after validating it.
8. Bump the Helm chart version once the Docker images have published.
## Workflow
#### Release Candidates
The workflow used by code-server maintainers is one that aims to be easy to understood by the community and easy enough for new maintainers to jump in and start contributing on day one.
We prefer to do release candidates so the community can test things before a
full-blown release. To do this follow the same steps as above but:
### Milestones
1. Add a `-rc.<number>` suffix to the version.
2. When you publish the release select "pre-release". CI will not automatically
publish pre-releases.
3. Do not update the chart version or merge in the changelog until the final
release.
We operate mainly using [milestones](https://github.com/cdr/code-server/milestones). This was heavily inspired by our friends over at [vscode](https://github.com/microsoft/vscode).
#### AUR
Here are the milestones we use and how we use them:
We publish to AUR as a package [here](https://aur.archlinux.org/packages/code-server/). This process is manual and can be done by following the steps in [this repo](https://github.com/coder/code-server-aur).
- "Backlog" -> Work not yet planned for a specific release.
- "On Deck" -> Work under consideration for upcoming milestones.
- "Backlog Candidates" -> Work that is not yet accepted for the backlog. We wait for the community to weigh in.
- "<0.0.0>" -> Work to be done for that version.
#### Docker
With this flow, any un-assigned issues are essentially in triage state and once triaged are either "Backlog" or "Backlog Candidates". They will eventually move to "On Deck" (or be closed). Lastly, they will end up on a version milestone where they will be worked on.
We publish code-server as a Docker image [here](https://hub.docker.com/r/codercom/code-server), tagging it both with the version and latest.
### Triage
This is currently automated with the release process.
We use the following process for triaging GitHub issues:
#### Homebrew
1. a submitter creates an issue
1. add appropriate labels
1. if we need to look into it further, add "needs-investigation"
1. add to milestone
1. if it should be fixed soon, add to version milestone or "On Deck"
1. if not urgent, add to "Backlog"
1. otherwise, add to "Backlog Candidate" if it should be considered
We publish code-server on Homebrew [here](https://github.com/Homebrew/homebrew-core/blob/master/Formula/code-server.rb).
### Project Boards
This is currently automated with the release process (but may fail occasionally). If it does, run this locally:
We use project boards for projects or goals that span multiple milestones.
```shell
# Replace VERSION with version
brew bump-formula-pr --version="${VERSION}" code-server --no-browse --no-audit
```
Think of this as a place to put miscellaneous things (like testing, clean up stuff, etc). As a maintainer, random todos may come up here and there. This gives you a place to add notes temporarily before opening a new issue. Given that our release milestones function off of issues, we believe tasks should have dedicated issues.
#### nixpkgs
It also gives us a way to separate the issue triage from bigger-picture, long-term work.
We publish code-server in nixpkgs but it must be updated manually.
## Versioning
#### npm
`<major.minor.patch>`
We publish code-server as a npm package [here](https://www.npmjs.com/package/code-server/v/latest).
The code-server project follows traditional [semantic versioning](ttps://semver.org/), with the objective of minimizing major changes that break backward compatibility. We increment the patch level for all releases, except when the upstream Visual Studio Code project increments its minor version or we change the plugin API in a backward-compatible manner. In those cases, we increment the minor version rather than the patch level.
This is currently automated with the release process.
## Testing
Our testing structure is laid out under our [Contributing docs](https://coder.com/docs/code-server/latest/CONTRIBUTING#test).
If you're ever looking to add more tests, here are a few ways to get started:
- run `npm run test:unit` and look at the coverage chart. You'll see all the
uncovered lines. This is a good place to start.
- look at `test/scripts` to see which scripts are tested. We can always use more
tests there.
- look at `test/e2e`. We can always use more end-to-end tests.
Otherwise, talk to a current maintainer and ask which part of the codebase is
lacking most when it comes to tests.
## Documentation
### Troubleshooting
Our docs are hosted on [Vercel](https://vercel.com/). Vercel only shows logs in
realtime, which means you need to have the logs open in one tab and reproduce
your error in another tab. Since our logs are private to Coder the organization,
you can only follow these steps if you're a Coder employee. Ask a maintainer for
help if you need it.
Taking a real scenario, let's say you wanted to troubleshoot [this docs
change](https://github.com/coder/code-server/pull/4042). Here is how you would
do it:
1. Go to https://vercel.com/codercom/codercom
2. Click "View Function Logs"
3. In a separate tab, open the preview link from github-actions-bot
4. Now look at the function logs and see if there are errors in the logs

Some files were not shown because too many files have changed in this diff Show More