mirror of
https://github.com/coder/code-server.git
synced 2026-04-18 22:05:19 -05:00
Compare commits
4 Commits
v4.19.0
...
v4.19.1-rc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9ba66ec468 | ||
|
|
09dd5fe44d | ||
|
|
958c5203ec | ||
|
|
edf078d1d2 |
@@ -22,6 +22,14 @@ Code v99.99.999
|
|||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
## [4.19.0](https://github.com/coder/code-server/releases/tag/v4.19.0) - 2023-11-18
|
||||||
|
|
||||||
|
Code v1.84.2
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- Updated to Code 1.84.2.
|
||||||
|
|
||||||
## [4.18.0](https://github.com/coder/code-server/releases/tag/v4.18.0) - 2023-10-20
|
## [4.18.0](https://github.com/coder/code-server/releases/tag/v4.18.0) - 2023-10-20
|
||||||
|
|
||||||
Code v1.83.1
|
Code v1.83.1
|
||||||
|
|||||||
@@ -15,9 +15,9 @@ type: application
|
|||||||
# This is the chart version. This version number should be incremented each time you make changes
|
# 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.
|
# to the chart and its templates, including the app version.
|
||||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||||
version: 3.14.0
|
version: 3.15.0
|
||||||
|
|
||||||
# This is the version number of the application being deployed. This version number should be
|
# 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
|
# 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.
|
# follow Semantic Versioning. They should reflect the version the application is using.
|
||||||
appVersion: 4.18.0
|
appVersion: 4.19.0
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ replicaCount: 1
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
repository: codercom/code-server
|
repository: codercom/code-server
|
||||||
tag: '4.18.0'
|
tag: '4.19.0'
|
||||||
pullPolicy: Always
|
pullPolicy: Always
|
||||||
|
|
||||||
# Specifies one or more secrets to be used when pulling images from a
|
# Specifies one or more secrets to be used when pulling images from a
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
- [Git won't work in `/sdcard`](#git-wont-work-in-sdcard)
|
- [Git won't work in `/sdcard`](#git-wont-work-in-sdcard)
|
||||||
- [Many extensions including language packs fail to install](#many-extensions-including-language-packs-fail-to-install)
|
- [Many extensions including language packs fail to install](#many-extensions-including-language-packs-fail-to-install)
|
||||||
- [Extra](#extra)
|
- [Extra](#extra)
|
||||||
|
- [Keyboard Shortcuts and Tab Key](#keyboard-shortcuts-and-tab-key)
|
||||||
- [Create a new user](#create-a-new-user)
|
- [Create a new user](#create-a-new-user)
|
||||||
- [Install Go](#install-go)
|
- [Install Go](#install-go)
|
||||||
- [Install Python](#install-python)
|
- [Install Python](#install-python)
|
||||||
@@ -121,6 +122,17 @@ NODE_OPTIONS="--require /path/to/android-as-linux.js" code-server
|
|||||||
|
|
||||||
## Extra
|
## Extra
|
||||||
|
|
||||||
|
### Keyboard Shortcuts and Tab Key
|
||||||
|
|
||||||
|
In order to support the tab key and use keyboard shortcuts, add this to your
|
||||||
|
settings.json:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"keyboard.dispatch": "keyCode"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
### Create a new user
|
### Create a new user
|
||||||
|
|
||||||
To create a new user follow these simple steps -
|
To create a new user follow these simple steps -
|
||||||
|
|||||||
@@ -12,9 +12,9 @@ Index: code-server/lib/vscode/src/vs/workbench/browser/web.api.ts
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- code-server.orig/lib/vscode/src/vs/workbench/browser/web.api.ts
|
--- code-server.orig/lib/vscode/src/vs/workbench/browser/web.api.ts
|
||||||
+++ code-server/lib/vscode/src/vs/workbench/browser/web.api.ts
|
+++ code-server/lib/vscode/src/vs/workbench/browser/web.api.ts
|
||||||
@@ -281,6 +281,11 @@ export interface IWorkbenchConstructionO
|
@@ -276,6 +276,11 @@ export interface IWorkbenchConstructionO
|
||||||
*/
|
*/
|
||||||
readonly userDataPath?: string
|
readonly configurationDefaults?: Record<string, any>;
|
||||||
|
|
||||||
+ /**
|
+ /**
|
||||||
+ * Whether the "Download..." option is enabled for files.
|
+ * Whether the "Download..." option is enabled for files.
|
||||||
@@ -40,9 +40,9 @@ Index: code-server/lib/vscode/src/vs/workbench/services/environment/browser/envi
|
|||||||
* Gets whether a resolver extension is expected for the environment.
|
* Gets whether a resolver extension is expected for the environment.
|
||||||
*/
|
*/
|
||||||
readonly expectsResolverExtension: boolean;
|
readonly expectsResolverExtension: boolean;
|
||||||
@@ -111,6 +116,13 @@ export class BrowserWorkbenchEnvironment
|
@@ -110,6 +115,13 @@ export class BrowserWorkbenchEnvironment
|
||||||
return this.options.userDataPath;
|
@memoize
|
||||||
}
|
get cacheHome(): URI { return joinPath(this.userRoamingDataHome, 'caches'); }
|
||||||
|
|
||||||
+ get isEnabledFileDownloads(): boolean {
|
+ get isEnabledFileDownloads(): boolean {
|
||||||
+ if (typeof this.options.isEnabledFileDownloads === "undefined") {
|
+ if (typeof this.options.isEnabledFileDownloads === "undefined") {
|
||||||
@@ -52,7 +52,7 @@ Index: code-server/lib/vscode/src/vs/workbench/services/environment/browser/envi
|
|||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
@memoize
|
@memoize
|
||||||
get argvResource(): URI { return joinPath(this.userRoamingDataHome, 'argv.json'); }
|
get workspaceStorageHome(): URI { return joinPath(this.userRoamingDataHome, 'workspaceStorage'); }
|
||||||
|
|
||||||
Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts
|
Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts
|
||||||
===================================================================
|
===================================================================
|
||||||
@@ -78,10 +78,10 @@ Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts
|
--- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts
|
||||||
+++ code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
+++ code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
||||||
@@ -332,6 +332,7 @@ export class WebClientServer {
|
@@ -331,6 +331,7 @@ export class WebClientServer {
|
||||||
|
const workbenchWebConfiguration = {
|
||||||
remoteAuthority,
|
remoteAuthority,
|
||||||
webviewEndpoint: vscodeBase + this._staticRoute + '/out/vs/workbench/contrib/webview/browser/pre',
|
webviewEndpoint: vscodeBase + this._staticRoute + '/out/vs/workbench/contrib/webview/browser/pre',
|
||||||
userDataPath: this._environmentService.userDataPath,
|
|
||||||
+ isEnabledFileDownloads: !this._environmentService.args['disable-file-downloads'],
|
+ isEnabledFileDownloads: !this._environmentService.args['disable-file-downloads'],
|
||||||
_wrapWebWorkerExtHostInIframe,
|
_wrapWebWorkerExtHostInIframe,
|
||||||
developmentOptions: { enableSmokeTestDriver: this._environmentService.args['enable-smoke-test-driver'] ? true : undefined, logLevel: this._logService.getLevel() },
|
developmentOptions: { enableSmokeTestDriver: this._environmentService.args['enable-smoke-test-driver'] ? true : undefined, logLevel: this._logService.getLevel() },
|
||||||
|
|||||||
@@ -220,7 +220,7 @@ Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
|||||||
import { CharCode } from 'vs/base/common/charCode';
|
import { CharCode } from 'vs/base/common/charCode';
|
||||||
import { getRemoteServerRootPath } from 'vs/platform/remote/common/remoteHosts';
|
import { getRemoteServerRootPath } from 'vs/platform/remote/common/remoteHosts';
|
||||||
import { IExtensionManifest } from 'vs/platform/extensions/common/extensions';
|
import { IExtensionManifest } from 'vs/platform/extensions/common/extensions';
|
||||||
@@ -344,6 +345,8 @@ export class WebClientServer {
|
@@ -343,6 +344,8 @@ export class WebClientServer {
|
||||||
callbackRoute: this._callbackRoute
|
callbackRoute: this._callbackRoute
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -229,7 +229,7 @@ Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
|||||||
const nlsBaseUrl = this._productService.extensionsGallery?.nlsBaseUrl;
|
const nlsBaseUrl = this._productService.extensionsGallery?.nlsBaseUrl;
|
||||||
const values: { [key: string]: string } = {
|
const values: { [key: string]: string } = {
|
||||||
WORKBENCH_WEB_CONFIGURATION: asJSON(workbenchWebConfiguration),
|
WORKBENCH_WEB_CONFIGURATION: asJSON(workbenchWebConfiguration),
|
||||||
@@ -352,6 +355,7 @@ export class WebClientServer {
|
@@ -351,6 +354,7 @@ export class WebClientServer {
|
||||||
WORKBENCH_NLS_BASE_URL: vscodeBase + (nlsBaseUrl ? `${nlsBaseUrl}${!nlsBaseUrl.endsWith('/') ? '/' : ''}${this._productService.commit}/${this._productService.version}/` : ''),
|
WORKBENCH_NLS_BASE_URL: vscodeBase + (nlsBaseUrl ? `${nlsBaseUrl}${!nlsBaseUrl.endsWith('/') ? '/' : ''}${this._productService.commit}/${this._productService.version}/` : ''),
|
||||||
BASE: base,
|
BASE: base,
|
||||||
VS_BASE: vscodeBase,
|
VS_BASE: vscodeBase,
|
||||||
|
|||||||
@@ -135,7 +135,7 @@ Index: code-server/lib/vscode/src/vs/workbench/browser/web.api.ts
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- code-server.orig/lib/vscode/src/vs/workbench/browser/web.api.ts
|
--- code-server.orig/lib/vscode/src/vs/workbench/browser/web.api.ts
|
||||||
+++ code-server/lib/vscode/src/vs/workbench/browser/web.api.ts
|
+++ code-server/lib/vscode/src/vs/workbench/browser/web.api.ts
|
||||||
@@ -286,6 +286,11 @@ export interface IWorkbenchConstructionO
|
@@ -281,6 +281,11 @@ export interface IWorkbenchConstructionO
|
||||||
*/
|
*/
|
||||||
readonly isEnabledFileDownloads?: boolean
|
readonly isEnabledFileDownloads?: boolean
|
||||||
|
|
||||||
@@ -163,7 +163,7 @@ Index: code-server/lib/vscode/src/vs/workbench/services/environment/browser/envi
|
|||||||
* Gets whether a resolver extension is expected for the environment.
|
* Gets whether a resolver extension is expected for the environment.
|
||||||
*/
|
*/
|
||||||
readonly expectsResolverExtension: boolean;
|
readonly expectsResolverExtension: boolean;
|
||||||
@@ -123,6 +128,13 @@ export class BrowserWorkbenchEnvironment
|
@@ -122,6 +127,13 @@ export class BrowserWorkbenchEnvironment
|
||||||
return this.options.isEnabledFileDownloads;
|
return this.options.isEnabledFileDownloads;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -175,7 +175,7 @@ Index: code-server/lib/vscode/src/vs/workbench/services/environment/browser/envi
|
|||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
@memoize
|
@memoize
|
||||||
get argvResource(): URI { return joinPath(this.userRoamingDataHome, 'argv.json'); }
|
get workspaceStorageHome(): URI { return joinPath(this.userRoamingDataHome, 'workspaceStorage'); }
|
||||||
|
|
||||||
Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts
|
Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts
|
||||||
===================================================================
|
===================================================================
|
||||||
@@ -201,9 +201,9 @@ Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts
|
--- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts
|
||||||
+++ code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
+++ code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
||||||
@@ -335,6 +335,7 @@ export class WebClientServer {
|
@@ -334,6 +334,7 @@ export class WebClientServer {
|
||||||
|
remoteAuthority,
|
||||||
webviewEndpoint: vscodeBase + this._staticRoute + '/out/vs/workbench/contrib/webview/browser/pre',
|
webviewEndpoint: vscodeBase + this._staticRoute + '/out/vs/workbench/contrib/webview/browser/pre',
|
||||||
userDataPath: this._environmentService.userDataPath,
|
|
||||||
isEnabledFileDownloads: !this._environmentService.args['disable-file-downloads'],
|
isEnabledFileDownloads: !this._environmentService.args['disable-file-downloads'],
|
||||||
+ isEnabledCoderGettingStarted: !this._environmentService.args['disable-getting-started-override'],
|
+ isEnabledCoderGettingStarted: !this._environmentService.args['disable-getting-started-override'],
|
||||||
_wrapWebWorkerExtHostInIframe,
|
_wrapWebWorkerExtHostInIframe,
|
||||||
|
|||||||
@@ -1,66 +0,0 @@
|
|||||||
Make storage local to the remote server
|
|
||||||
|
|
||||||
This solves two problems:
|
|
||||||
1. Extensions running in the browser (like Vim) might use these paths
|
|
||||||
directly instead of using the file service and most likely can't write
|
|
||||||
to `/User` on disk.
|
|
||||||
2. Settings will be stored in the file system instead of in browser
|
|
||||||
storage. Using browser storage makes sharing or seeding settings
|
|
||||||
between browsers difficult. We may want to revisit this once/if we get
|
|
||||||
settings sync.
|
|
||||||
|
|
||||||
Unfortunately this does not affect state which uses a separate method with
|
|
||||||
IndexedDB and does not appear nearly as easy to redirect to disk.
|
|
||||||
|
|
||||||
To test install the Vim extension and make sure something that uses file storage
|
|
||||||
works (history recall for example) and change settings from the UI and on disk
|
|
||||||
while making sure they appear on the other side.
|
|
||||||
|
|
||||||
Index: code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
|
||||||
===================================================================
|
|
||||||
--- code-server.orig/lib/vscode/src/vs/server/node/webClientServer.ts
|
|
||||||
+++ code-server/lib/vscode/src/vs/server/node/webClientServer.ts
|
|
||||||
@@ -327,6 +327,7 @@ export class WebClientServer {
|
|
||||||
const workbenchWebConfiguration = {
|
|
||||||
remoteAuthority,
|
|
||||||
webviewEndpoint: vscodeBase + this._staticRoute + '/out/vs/workbench/contrib/webview/browser/pre',
|
|
||||||
+ userDataPath: this._environmentService.userDataPath,
|
|
||||||
_wrapWebWorkerExtHostInIframe,
|
|
||||||
developmentOptions: { enableSmokeTestDriver: this._environmentService.args['enable-smoke-test-driver'] ? true : undefined, logLevel: this._logService.getLevel() },
|
|
||||||
settingsSyncOptions: !this._environmentService.isBuilt && this._environmentService.args['enable-sync'] ? { enabled: true } : undefined,
|
|
||||||
Index: code-server/lib/vscode/src/vs/workbench/browser/web.api.ts
|
|
||||||
===================================================================
|
|
||||||
--- code-server.orig/lib/vscode/src/vs/workbench/browser/web.api.ts
|
|
||||||
+++ code-server/lib/vscode/src/vs/workbench/browser/web.api.ts
|
|
||||||
@@ -276,6 +276,11 @@ export interface IWorkbenchConstructionO
|
|
||||||
*/
|
|
||||||
readonly configurationDefaults?: Record<string, any>;
|
|
||||||
|
|
||||||
+ /**
|
|
||||||
+ * Path to the user data directory.
|
|
||||||
+ */
|
|
||||||
+ readonly userDataPath?: string
|
|
||||||
+
|
|
||||||
//#endregion
|
|
||||||
|
|
||||||
//#region Profile options
|
|
||||||
Index: code-server/lib/vscode/src/vs/workbench/services/environment/browser/environmentService.ts
|
|
||||||
===================================================================
|
|
||||||
--- code-server.orig/lib/vscode/src/vs/workbench/services/environment/browser/environmentService.ts
|
|
||||||
+++ code-server/lib/vscode/src/vs/workbench/services/environment/browser/environmentService.ts
|
|
||||||
@@ -102,7 +102,14 @@ export class BrowserWorkbenchEnvironment
|
|
||||||
get logFile(): URI { return joinPath(this.windowLogsPath, 'window.log'); }
|
|
||||||
|
|
||||||
@memoize
|
|
||||||
- get userRoamingDataHome(): URI { return URI.file('/User').with({ scheme: Schemas.vscodeUserData }); }
|
|
||||||
+ get userRoamingDataHome(): URI { return joinPath(URI.file(this.userDataPath).with({ scheme: Schemas.vscodeRemote }), 'User'); }
|
|
||||||
+
|
|
||||||
+ get userDataPath(): string {
|
|
||||||
+ if (!this.options.userDataPath) {
|
|
||||||
+ throw new Error('userDataPath was not provided to the browser');
|
|
||||||
+ }
|
|
||||||
+ return this.options.userDataPath;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
@memoize
|
|
||||||
get argvResource(): URI { return joinPath(this.userRoamingDataHome, 'argv.json'); }
|
|
||||||
@@ -10,7 +10,6 @@ logout.diff
|
|||||||
store-socket.diff
|
store-socket.diff
|
||||||
proxy-uri.diff
|
proxy-uri.diff
|
||||||
unique-db.diff
|
unique-db.diff
|
||||||
local-storage.diff
|
|
||||||
service-worker.diff
|
service-worker.diff
|
||||||
sourcemaps.diff
|
sourcemaps.diff
|
||||||
disable-downloads.diff
|
disable-downloads.diff
|
||||||
|
|||||||
@@ -77,9 +77,9 @@ export class CodeServer {
|
|||||||
*/
|
*/
|
||||||
private async createWorkspace(): Promise<string> {
|
private async createWorkspace(): Promise<string> {
|
||||||
const dir = await this.workspaceDir
|
const dir = await this.workspaceDir
|
||||||
await fs.mkdir(path.join(dir, "User"), { recursive: true })
|
await fs.mkdir(path.join(dir, "Machine"), { recursive: true })
|
||||||
await fs.writeFile(
|
await fs.writeFile(
|
||||||
path.join(dir, "User/settings.json"),
|
path.join(dir, "Machine/settings.json"),
|
||||||
JSON.stringify({
|
JSON.stringify({
|
||||||
"workbench.startupEditor": "none",
|
"workbench.startupEditor": "none",
|
||||||
}),
|
}),
|
||||||
|
|||||||
Reference in New Issue
Block a user