1
0
Alex Dima 3 жил өмнө
parent
commit
5af2334c5e
4 өөрчлөгдсөн 38 нэмэгдсэн , 71 устгасан
  1. 4 0
      CHANGELOG.md
  2. 24 66
      CONTRIBUTING.md
  3. 3 3
      package-lock.json
  4. 7 2
      package.json

+ 4 - 0
CHANGELOG.md

@@ -1,5 +1,9 @@
 # Monaco Editor Changelog
 
+## [0.30.1] (09.11.2021)
+
+- Fixes [a performance regression where all languages would be loaded when loading the first language](https://github.com/microsoft/monaco-editor/issues/2750).
+
 ## [0.30.0] (04.11.2021)
 
 - adds support for rendering horizontal guides between bracket pairs and improves the vertical rendering to account for content in between brackets.

+ 24 - 66
CONTRIBUTING.md

@@ -2,26 +2,18 @@
 
 ## A brief explanation on the source code structure
 
-This repository contains no source code, it only contains the scripts to package everything together and ship the `monaco-editor` npm module:
+This repository contains source code only for Monaco Editor Languages, the core editor source lives in the [vscode repository](https://github.com/Microsoft/vscode).
 
-These packages are described in the root file called `metadata.js` and it is possible to create an editor distribution that contains only certain plugins by editing that file.
-
-| repository                                                          | npm module                                                             | explanation                                                               |
-| ------------------------------------------------------------------- | ---------------------------------------------------------------------- | ------------------------------------------------------------------------- |
-| [vscode](https://github.com/Microsoft/vscode)                       | [monaco-editor-core](https://www.npmjs.com/package/monaco-editor-core) | editor core functionality (language agnostic) is shipped out of vscode.   |
-| [monaco-languages](https://github.com/Microsoft/monaco-languages)   | [monaco-languages](https://www.npmjs.com/package/monaco-languages)     | plugin that adds colorization and basic supports for dozens of languages. |
-| [monaco-typescript](https://github.com/Microsoft/monaco-typescript) | [monaco-typescript](https://www.npmjs.com/package/monaco-typescript)   | plugin that adds rich language support for JavaScript and TypeScript.     |
-| [monaco-css](https://github.com/Microsoft/monaco-css)               | [monaco-css](https://www.npmjs.com/package/monaco-css)                 | plugin that adds rich language support for CSS, LESS and SCSS.            |
-| [monaco-json](https://github.com/Microsoft/monaco-json)             | [monaco-json](https://www.npmjs.com/package/monaco-json)               | plugin that adds rich language support for JSON.                          |
-| [monaco-html](https://github.com/Microsoft/monaco-html)             | [monaco-html](https://www.npmjs.com/package/monaco-html)               | plugin that adds rich language support for HTML.                          |
+| repository                                                  | npm module                                                             | explanation                                                             |
+| ----------------------------------------------------------- | ---------------------------------------------------------------------- | ----------------------------------------------------------------------- |
+| [vscode](https://github.com/microsoft/vscode)               | [monaco-editor-core](https://www.npmjs.com/package/monaco-editor-core) | editor core functionality (language agnostic) is shipped out of vscode. |
+| [monaco-editor](https://github.com/microsoft/monaco-editor) | [monaco-editor](https://www.npmjs.com/package/monaco-editor)           | the Monaco Editor.                                                      |
 
 ## Running the editor from source
 
 You need to have all the build setup of VS Code to be able to build the Monaco Editor.
 
-- Install all the [prerequisites](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#prerequisites)
-
-### OS X and Linux
+- Install all the [prerequisites](https://github.com/microsoft/vscode/wiki/How-to-Contribute#prerequisites)
 
 ```bash
 # clone vscode-loc repository for localized string resources
@@ -32,53 +24,31 @@ You need to have all the build setup of VS Code to be able to build the Monaco E
 # install npm deps for vscode
 /src/vscode> yarn
 # start the compiler in the background
-/src/vscode> yarn run watch
-```
-
-### Windows
-
-```cmd
-# clone vscode-loc repository for localized string resources
-/src> git clone https://github.com/microsoft/vscode-loc
-# clone VS Code repository
-/src> git clone https://github.com/microsoft/vscode
-/src> cd vscode
-# install npm deps for vscode
-/src/vscode> yarn
-# start the compiler in the background
-/src/vscode> yarn run watch
+/src/vscode> yarn watch
 ```
 
 - For the monaco editor test pages:
 
 ```bash
 # clone monaco-editor (note the folders must be siblings!)
-/src> git clone https://github.com/Microsoft/monaco-editor
+/src> git clone https://github.com/microsoft/monaco-editor
 
 # install npm deps for monaco-editor
 /src/monaco-editor> npm install .
 
+# compile all plugins
+/src/monaco-editor> npm run prepublishOnly --prefix monaco-css
+/src/monaco-editor> npm run prepublishOnly --prefix monaco-languages
+/src/monaco-editor> npm run prepublishOnly --prefix monaco-typescript
+/src/monaco-editor> npm run prepublishOnly --prefix monaco-json
+/src/monaco-editor> npm run prepublishOnly --prefix monaco-html
+
 # start a local http server in the background
 /src/monaco-editor> npm run simpleserver
 ```
 
 Open [http://localhost:8080/monaco-editor/test/?editor=src](http://localhost:8080/monaco-editor/test/?editor=src) to run.
 
-## Running a plugin from source (e.g. monaco-typescript)
-
-```bash
-# clone monaco-typescript
-/src> git clone https://github.com/Microsoft/monaco-typescript
-
-# install npm deps for monaco-typescript
-/src/monaco-typescript> npm install .
-
-# start the compiler in the background
-/src/monaco-typescript> npm run watch
-```
-
-Open [http://localhost:8080/monaco-editor/test/?editor=src&monaco-typescript=src](http://localhost:8080/monaco-editor/test/?editor=src&monaco-typescript=src) to run.
-
 ## Running the editor tests
 
 ```bash
@@ -119,29 +89,17 @@ Open [http://localhost:8080/monaco-editor/test/?editor=src&monaco-typescript=src
 
 - bump version in `/src/vscode/build/monaco/package.json`
 - **[important]** push all local changes to the remote to get a good public commit id.
-- generate npm package `/src/vscode> node_modules/.bin/gulp editor-distro`
+- generate npm package `/src/vscode> yarn gulp editor-distro`
 - publish npm package `/src/vscode/out-monaco-editor-core> npm publish`
 
-#### 2. Adopt new `monaco-editor-core` in plugins
-
-- if there are breaking API changes that affect the language plugins, adopt the new API in:
-  - [repo - monaco-typescript](https://github.com/Microsoft/monaco-typescript)
-  - [repo - monaco-languages](https://github.com/Microsoft/monaco-languages)
-  - [repo - monaco-css](https://github.com/Microsoft/monaco-css)
-  - [repo - monaco-json](https://github.com/Microsoft/monaco-json)
-  - [repo - monaco-html](https://github.com/Microsoft/monaco-html)
-- publish new versions of those plugins to npm as necessary.
-
-#### 3. Update package.json
-
-- edit `/src/monaco-editor/package.json` and update the version (as necessary):
-  - [npm - monaco-editor-core](https://www.npmjs.com/package/monaco-editor-core)
-  - [npm - monaco-typescript](https://www.npmjs.com/package/monaco-typescript)
-  - [npm - monaco-languages](https://www.npmjs.com/package/monaco-languages)
-  - [npm - monaco-css](https://www.npmjs.com/package/monaco-css)
-  - [npm - monaco-json](https://www.npmjs.com/package/monaco-json)
-  - [npm - monaco-html](https://www.npmjs.com/package/monaco-html)
-- **[important]** fetch latest deps by running `/src/monaco-editor> npm install .`
+#### 2. Update `monaco-editor-core`
+
+- edit `/src/monaco-editor/package.json` and update the version of [`monaco-editor-core`](https://www.npmjs.com/package/monaco-editor-core)
+
+```sh
+# fetch latest deps
+/src/monaco-editor> npm install .
+```
 
 #### 4. Generate and try out the local release
 

+ 3 - 3
package-lock.json

@@ -2836,9 +2836,9 @@
 			}
 		},
 		"monaco-editor-core": {
-			"version": "0.30.0",
-			"resolved": "https://registry.npmjs.org/monaco-editor-core/-/monaco-editor-core-0.30.0.tgz",
-			"integrity": "sha512-vFJ7BEOCqLv4xWgFW+UheI/PtccHHNht29lNmo79Re1kNhWCBLLb2nThjRMLPO1rd41vX9hhd9C07/iKOk9/jQ==",
+			"version": "0.30.1",
+			"resolved": "https://registry.npmjs.org/monaco-editor-core/-/monaco-editor-core-0.30.1.tgz",
+			"integrity": "sha512-WNxfchYafMZXVfysqg/ESW4MtOpYLPaIKrzudNlgwYvfYID+O/nwSZI5X+KxW84roVzHsNgFGyOOesfHFZwYUA==",
 			"dev": true
 		},
 		"monaco-plugin-helpers": {

+ 7 - 2
package.json

@@ -7,7 +7,12 @@
 	"license": "MIT",
 	"scripts": {
 		"simpleserver": "gulp simpleserver",
-		"release": "gulp release",
+		"release-css": "npm run prepublishOnly --prefix monaco-css",
+		"release-html": "npm run prepublishOnly --prefix monaco-html",
+		"release-json": "npm run prepublishOnly --prefix monaco-json",
+		"release-languages": "npm run prepublishOnly --prefix monaco-languages",
+		"release-typescript": "npm run prepublishOnly --prefix monaco-typescript",
+		"release": "npm run release-css && npm run release-html && npm run release-json && npm run release-languages && npm run release-typescript && gulp release",
 		"website": "gulp build-website && npm run typedoc && gulp prepare-website-branch",
 		"build-website": "gulp build-website && npm run typedoc",
 		"typedoc": "cd typedoc && \"../node_modules/.bin/typedoc\" --options ./typedoc.json",
@@ -29,7 +34,7 @@
 		"gulp": "^4.0.2",
 		"jsdom": "^17.0.0",
 		"jsonc-parser": "^3.0.0",
-		"monaco-editor-core": "0.30.0",
+		"monaco-editor-core": "0.30.1",
 		"monaco-plugin-helpers": "^1.0.3",
 		"prettier": "^2.4.1",
 		"requirejs": "^2.3.6",