Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: microsoft/vscode
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: runcode-io/openvscode-web-server
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
  • 20 commits
  • 15 files changed
  • 10 contributors

Commits on Jul 1, 2024

  1. rename editor.collapsedText to foldPlaceholderForeground (#219340)

    rename vscode-editor-collapsedText
    aeschli authored Jul 1, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    2e12c97 View commit details
  2. fix #219336 (#219337)

    * fix #219336
    
    * fix owner
    sandy081 authored Jul 1, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    ea1445c View commit details

Commits on Jul 3, 2024

  1. use unofficial 1espt (#219836)

    use unofficial 1espt (#219824)
    joaomoreno authored Jul 3, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    699ded1 View commit details
  2. Open-dragon (#219848)

    update known variables
    benibenj authored Jul 3, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    273d8a3 View commit details

Commits on Jul 4, 2024

  1. select a language option is not working (fix #219876) (#219880)

    bpasero authored Jul 4, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    5396c3c View commit details

Commits on Jul 8, 2024

  1. fix: use xcode >= 15.1 to address broken builds on macOS <= 12 (#219991

    …) (#220040)
    deepak1556 authored Jul 8, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    8fa1eb8 View commit details
  2. Reverts the recent drop changes as these introduced regressions (#219896

    )
    
    Safest fix for the recovery build
    mjbvz authored Jul 8, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    17fe772 View commit details
  3. Bump version for June Recovery 1 (#221220)

    bump
    Yoyokrazy authored Jul 8, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    8dc1162 View commit details

Commits on Jul 9, 2024

  1. fix #219941 (#221267)

    sandy081 authored Jul 9, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    bc40ad6 View commit details
  2. Git - add exception handling to handle edge cases (#221268)

    lszomoru authored Jul 9, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    f1e16e1 View commit details

Commits on Aug 4, 2024

  1. runcode

    ashwin31 committed Aug 4, 2024
    Copy the full SHA
    64448a0 View commit details
  2. runcode

    ashwin31 committed Aug 4, 2024
    Copy the full SHA
    1ab870f View commit details
  3. Merge pull request #1 from runcode-io/1_92_0

    new release
    ashwin31 authored Aug 4, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    77f8700 View commit details
  4. added quality to product.json

    ashwin31 committed Aug 4, 2024
    Copy the full SHA
    9cecf24 View commit details
  5. Merge pull request #2 from runcode-io/1_92_0

    added quality to product.json
    ashwin31 authored Aug 4, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    0939c14 View commit details

Commits on Aug 14, 2024

  1. basic changes for build

    ashwin31 committed Aug 14, 2024
    Copy the full SHA
    2f153b5 View commit details
  2. Merge branch 'main' into 1_91_1

    Signed-off-by: Ashwin Kumar <ashwin@runcode.io>
    ashwin31 authored Aug 14, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    5024f01 View commit details
  3. Merge pull request #3 from runcode-io/1_91_1

    1 91 1
    ashwin31 authored Aug 14, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    76f1aae View commit details

Commits on Aug 15, 2024

  1. updated readme

    ashwin31 committed Aug 15, 2024
    Copy the full SHA
    2a0c44c View commit details
  2. Merge pull request #4 from runcode-io/1_91_1

    updated readme
    ashwin31 authored Aug 15, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    03b8557 View commit details
97 changes: 48 additions & 49 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,79 +1,78 @@
# Visual Studio Code - Open Source ("Code - OSS")
# OpenVSCode Web Server

[![Feature Requests](https://img.shields.io/github/issues/microsoft/vscode/feature-request.svg)](https://github.com/microsoft/vscode/issues?q=is%3Aopen+is%3Aissue+label%3Afeature-request+sort%3Areactions-%2B1-desc)
[![Bugs](https://img.shields.io/github/issues/microsoft/vscode/bug.svg)](https://github.com/microsoft/vscode/issues?utf8=✓&q=is%3Aissue+is%3Aopen+label%3Abug)
[![Gitter](https://img.shields.io/badge/chat-on%20gitter-yellow.svg)](https://gitter.im/Microsoft/vscode)
[![GitHub](https://img.shields.io/github/license/runcode-io/openvscode-web-server)](https://github.com/runcode-io/openvscode-web-server/blob/main/LICENSE.txt)

## The Repository
## What is this?

This repository ("`Code - OSS`") is where we (Microsoft) develop the [Visual Studio Code](https://code.visualstudio.com) product together with the community. Not only do we work on code and issues here, we also publish our [roadmap](https://github.com/microsoft/vscode/wiki/Roadmap), [monthly iteration plans](https://github.com/microsoft/vscode/wiki/Iteration-Plans), and our [endgame plans](https://github.com/microsoft/vscode/wiki/Running-the-Endgame). This source code is available to everyone under the standard [MIT license](https://github.com/microsoft/vscode/blob/main/LICENSE.txt).
This project provides a version of VS Code that runs as a server on a remote machine, accessible through a modern web browser. It utilizes the same architecture used by [RunCode](https://runcode.io) to deliver scalable remote development environments.

## Visual Studio Code
## Why?

<p align="center">
<img alt="VS Code in action" src="https://user-images.githubusercontent.com/35271042/118224532-3842c400-b438-11eb-923d-a5f66fa6785a.png">
</p>
VS Code was originally developed as a desktop IDE using web technologies. As remote development gained popularity, the community began adapting it for remote access via web browsers. However, these adaptations were often complex and error-prone due to the extensive changes required across VS Code's large codebase.

[Visual Studio Code](https://code.visualstudio.com) is a distribution of the `Code - OSS` repository with Microsoft-specific customizations released under a traditional [Microsoft product license](https://code.visualstudio.com/License/).
In 2019, the VS Code team began restructuring its architecture to natively support a browser-based environment. While platforms like Gitpod and GitHub adopted this architecture, the key components remained closed-source until recently. Consequently, many developers continued to use the older, more difficult methods.

[Visual Studio Code](https://code.visualstudio.com) combines the simplicity of a code editor with what developers need for their core edit-build-debug cycle. It provides comprehensive code editing, navigation, and understanding support along with lightweight debugging, a rich extensibility model, and lightweight integration with existing tools.
At RunCode, we've frequently been asked about our approach. To support the community, we're sharing the minimal set of changes required to utilize the latest version of VS Code, ensuring easier upgrades and reduced maintenance.

Visual Studio Code is updated monthly with new features and bug fixes. You can download it for Windows, macOS, and Linux on [Visual Studio Code's website](https://code.visualstudio.com/Download). To get the latest releases every day, install the [Insiders build](https://code.visualstudio.com/insiders).
## Getting started

## Contributing
### Docker

There are many ways in which you can participate in this project, for example:
- Start the server:
```bash
docker run -it --init -p 8000:8000 -v "$(pwd):/home/runcode/workspace:cached" runcode/runcode-server
```
- Visit the URL printed in your terminal.

* [Submit bugs and feature requests](https://github.com/microsoft/vscode/issues), and help us verify as they are checked in
* Review [source code changes](https://github.com/microsoft/vscode/pulls)
* Review the [documentation](https://github.com/microsoft/vscode-docs) and make pull requests for anything from typos to additional and new content

If you are interested in fixing issues and contributing directly to the code base,
please see the document [How to Contribute](https://github.com/microsoft/vscode/wiki/How-to-Contribute), which covers the following:

* [How to build and run from source](https://github.com/microsoft/vscode/wiki/How-to-Contribute)
* [The development workflow, including debugging and running tests](https://github.com/microsoft/vscode/wiki/How-to-Contribute#debugging)
* [Coding guidelines](https://github.com/microsoft/vscode/wiki/Coding-Guidelines)
* [Submitting pull requests](https://github.com/microsoft/vscode/wiki/How-to-Contribute#pull-requests)
* [Finding an issue to work on](https://github.com/microsoft/vscode/wiki/How-to-Contribute#where-to-contribute)
* [Contributing to translations](https://aka.ms/vscodeloc)
#### Custom Environment
- For additional possibilities, please consult the `Dockerfile` for OpenVSCode Web Server at https://github.com/runcode-io/runcode-releases/

## Feedback

* Ask a question on [Stack Overflow](https://stackoverflow.com/questions/tagged/vscode)
* [Request a new feature](CONTRIBUTING.md)
* Upvote [popular feature requests](https://github.com/microsoft/vscode/issues?q=is%3Aopen+is%3Aissue+label%3Afeature-request+sort%3Areactions-%2B1-desc)
* [File an issue](https://github.com/microsoft/vscode/issues)
* Connect with the extension author community on [GitHub Discussions](https://github.com/microsoft/vscode-discussions/discussions) or [Slack](https://aka.ms/vscode-dev-community)
* Follow [@code](https://twitter.com/code) and let us know what you think!
### Web Server

See our [wiki](https://github.com/microsoft/vscode/wiki/Feedback-Channels) for a description of each of these channels and information on some other available community-driven channels.
- [Download the latest release](https://github.com/runcode-io/openvscode-web-server/releases/latest)
- Untar and run the server
```bash
unzip openvscode-web-server-v${OPENVSCODE_SERVER_VERSION}.zip
cd vscode-reh-web-linux-x64
./bin/runcode-server # you can add arguments here, use --help to list all of the possible options
```

## Related Projects
From the possible entrypoint arguments, the most notable ones are
- `--port` - the port number to start the server on, this is 8000 by default
- `--without-connection-token` - used by default in the docker image
- `--connection-token` & `--connection-token-file` for securing access to the IDE, you can read more about it in [Securing access to your IDE](#securing-access-to-your-ide).
- `--host` - determines the host the server is listening on. It defaults to `localhost`, so for accessing remotely it's a good idea to add `--host 0.0.0.0` to your launch arguments.

Many of the core components and extensions to VS Code live in their own repositories on GitHub. For example, the [node debug adapter](https://github.com/microsoft/vscode-node-debug) and the [mono debug adapter](https://github.com/microsoft/vscode-mono-debug) repositories are separate from each other. For a complete list, please visit the [Related Projects](https://github.com/microsoft/vscode/wiki/Related-Projects) page on our [wiki](https://github.com/microsoft/vscode/wiki).
- Visit the URL printed in your terminal.

## Bundled Extensions
### Securing access to your IDE

VS Code includes a set of built-in extensions located in the [extensions](extensions) folder, including grammars and snippets for many languages. Extensions that provide rich language support (code completion, Go to Definition) for a language have the suffix `language-features`. For example, the `json` extension provides coloring for `JSON` and the `json-language-features` extension provides rich language support for `JSON`.
You can access the Web UI without authentication (anyone can access the IDE using just the hostname and port), if you need some kind of basic authentication then you can start the server with `--connection-token YOUR_TOKEN`, the provided `YOUR_TOKEN` will be used and the authenticated URL will be displayed in your terminal once you start the server. You can also create a plaintext file with the desired token as its contents and provide it to the server with `--connection-token-file YOUR_SECRET_TOKEN_FILE`.

## Development Container
If you want to use a connection token and are working with OpenVSCode Web Server via [the Docker image](https://hub.docker.com/r/runcode/runcode-server), you will have to edit the `ENTRYPOINT` in [the Dockerfile](https://github.com/runcode-io/runcode-releases/blob/main/Dockerfile) or modify it with the [`entrypoint` option](https://docs.docker.com/compose/compose-file/compose-file-v3/#entrypoint) when working with `docker-compose`.

This repository includes a Visual Studio Code Dev Containers / GitHub Codespaces development container.
## The scope of this project

* For [Dev Containers](https://aka.ms/vscode-remote/download/containers), use the **Dev Containers: Clone Repository in Container Volume...** command which creates a Docker volume for better disk I/O on macOS and Windows.
* If you already have VS Code and Docker installed, you can also click [here](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/microsoft/vscode) to get started. This will cause VS Code to automatically install the Dev Containers extension if needed, clone the source code into a container volume, and spin up a dev container for use.
This project only adds minimal bits required to run VS Code in a server scenario. We have no intention of changing VS Code in any way or to add additional features to VS Code itself. Please report feature requests, bug fixes, etc. in the upstream repository.

* For Codespaces, install the [GitHub Codespaces](https://marketplace.visualstudio.com/items?itemName=GitHub.codespaces) extension in VS Code, and use the **Codespaces: Create New Codespace** command.
> **For any feature requests, bug reports, or contributions that are not specific to running VS Code in a server context, please go to [Visual Studio Code - Open Source "OSS"](https://github.com/microsoft/vscode)**
Docker / the Codespace should have at least **4 Cores and 6 GB of RAM (8 GB recommended)** to run full build. See the [development container README](.devcontainer/README.md) for more information.
## Bundled Extensions

## Code of Conduct
VS Code includes a set of built-in extensions located in the [extensions](extensions) folder, including grammars and snippets for many languages. Extensions that provide rich language support (code completion, Go to Definition) for a language have the suffix `language-features`. For example, the `json` extension provides coloring for `JSON` and the `json-language-features` extension provides rich language support for `JSON`.

This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
## Development Container

## License
This repository includes a Visual Studio Code Dev Containers / GitHub Codespaces development container.

Copyright (c) Microsoft Corporation. All rights reserved.
- For [Dev Containers](https://aka.ms/vscode-remote/download/containers), use the **Dev Containers: Clone Repository in Container Volume...** command which creates a Docker volume for better disk I/O on macOS and Windows.
- If you already have VS Code and Docker installed, you can also click [here](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/microsoft/vscode) to get started. This will cause VS Code to automatically install the Dev Containers extension if needed, clone the source code into a container volume, and spin up a dev container for use.
- For Codespaces, install the [GitHub Codespaces](https://marketplace.visualstudio.com/items?itemName=GitHub.codespaces) extension in VS Code, and use the **Codespaces: Create New Codespace** command.

Docker / the Codespace should have at least **4 Cores and 6 GB of RAM (8 GB recommended)** to run full build. See the [development container README](.devcontainer/README.md) for more information.

Licensed under the [MIT](LICENSE.txt) license.
## Legal
This project is not affiliated with Microsoft Corporation.
2 changes: 1 addition & 1 deletion build/.cachesalt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2024-07-04T16:31:11.121Z
2024-07-05T08:35:22.799Z
8 changes: 4 additions & 4 deletions build/hygiene.js
Original file line number Diff line number Diff line change
@@ -30,10 +30,10 @@ function hygiene(some, linting = true) {
const productJson = es.through(function (file) {
const product = JSON.parse(file.contents.toString('utf8'));

if (product.extensionsGallery) {
console.error(`product.json: Contains 'extensionsGallery'`);
errorCount++;
}
// if (product.extensionsGallery) {
// console.error(`product.json: Contains 'extensionsGallery'`);
// errorCount++;
// }

this.emit('data', file);
});
16 changes: 15 additions & 1 deletion build/lib/compilation.ts
Original file line number Diff line number Diff line change
@@ -21,7 +21,9 @@ import { Mangler } from './mangle/index';
import { RawSourceMap } from 'source-map';
import { gulpPostcss } from './postcss';
const watch = require('./watch');

const packageJson = require('../../package.json');
const productJson = require('../../product.json');
const replace = require('gulp-replace');

// --- gulp-tsb: compile and transpile --------------------------------

@@ -77,8 +79,20 @@ function createCompile(src: string, { build, emitError, transpileOnly, preserveE

const postcssNesting = require('postcss-nesting');

const productJsFilter = util.filter(data => !build && data.path.endsWith('vs/platform/product/common/product.ts'));
const productConfiguration = JSON.stringify({
...productJson,
version: `${packageJson.version}-dev`,
nameShort: `${productJson.nameShort} Dev`,
nameLong: `${productJson.nameLong} Dev`,
dataFolderName: `${productJson.dataFolderName}-dev`
});

const input = es.through();
const output = input
.pipe(productJsFilter)
.pipe(replace(/{\s*\/\*BUILD->INSERT_PRODUCT_CONFIGURATION\*\/\s*}/, productConfiguration, { skipBinary: true }))
.pipe(productJsFilter.restore)
.pipe(util.$if(isUtf8Test, bom())) // this is required to preserve BOM in test files that loose it otherwise
.pipe(util.$if(!build && isRuntimeJs, util.appendOwnPathSourceURL()))
.pipe(util.$if(isCSS, gulpPostcss([postcssNesting()], err => reporter(String(err)))))
31 changes: 31 additions & 0 deletions extensions/git/src/historyProvider.ts
Original file line number Diff line number Diff line change
@@ -173,6 +173,37 @@ export class GitHistoryProvider implements SourceControlHistoryProvider, FileDec
this.logger.error(`[GitHistoryProvider][provideHistoryItems2] Failed to get history items '${options.limit.id}..': ${err}`);
return [];
}

const historyItems: SourceControlHistoryItem[] = [];

try {
// Get the commits
const commits = await this.repository.log({ range: `${refsMergeBase}^..`, refNames });

await ensureEmojis();

historyItems.push(...commits.map(commit => {
const newLineIndex = commit.message.indexOf('\n');
const subject = newLineIndex !== -1 ? commit.message.substring(0, newLineIndex) : commit.message;

const labels = this.resolveHistoryItemLabels(commit, refNames);

return {
id: commit.hash,
parentIds: commit.parents,
message: emojify(subject),
author: commit.authorName,
icon: new ThemeIcon('git-commit'),
timestamp: commit.authorDate?.getTime(),
statistics: commit.shortStat ?? { files: 0, insertions: 0, deletions: 0 },
labels: labels.length !== 0 ? labels : undefined
};
}));
} catch (err) {
this.logger.error(`[GitHistoryProvider][provideHistoryItems2] Failed to get history items '${refsMergeBase}^..': ${err}`);
}

return historyItems;
}

async provideHistoryItemSummary(historyItemId: string, historyItemParentId: string | undefined): Promise<SourceControlHistoryItem> {
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "code-oss-dev",
"version": "1.93.0",
"distro": "a08b8e0a3ee750481000d63bf36e5a206fe6aecf",
"version": "1.91.1",
"distro": "a08799837ca498c02f445ca7a896f446419af238",
"author": {
"name": "Microsoft Corporation"
},
Loading